@artblocks/contracts 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -38
- package/artifacts/contracts/AdminACLV1.sol/AdminACLV1.json +2 -2
- package/artifacts/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2.sol/BytecodeStorageReaderContractV2.json +201 -0
- package/artifacts/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2_Web3Call.sol/BytecodeStorageReaderContractV2_Web3Call.json +201 -0
- package/artifacts/contracts/BytecodeStorageReaders/UniversalBytecodeStorageReader.sol/UniversalBytecodeStorageReader.json +154 -0
- package/artifacts/contracts/BytecodeStorageV2Writer.sol/BytecodeStorageV2Writer.json +87 -0
- package/artifacts/contracts/DependencyRegistryV0.sol/DependencyRegistryV0.json +174 -55
- package/artifacts/contracts/GenArt721CoreV3_Curated.sol/GenArt721CoreV3_Curated.json +2493 -0
- package/artifacts/contracts/OwnedCreate2FactoryV0.sol/OwnedCreate2FactoryV0.json +311 -0
- package/artifacts/contracts/archive/GenArt721CoreV3.sol/GenArt721CoreV3.json +15 -2
- package/artifacts/contracts/archive/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +15 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol/MinterDAExpV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol/MinterDAExpV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV4.sol/MinterDAExpV4.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol/MinterDALinV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol/MinterDALinV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV4.sol/MinterDALinV4.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol/MinterHolderV1.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol/MinterHolderV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV4.sol/MinterHolderV4.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol/MinterMerkleV1.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol/MinterMerkleV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol/MinterMerkleV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol/MinterMerkleV4.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV5.sol/MinterMerkleV5.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterPolyptych/MinterPolyptychV0.sol/IGenArt721CoreContractV3WithRandomizer.json +37 -0
- package/artifacts/contracts/archive/minter-suite/Minters/MinterPolyptych/MinterPolyptychV0.sol/MinterPolyptychV0.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSEA/MinterSEAV0.sol/MinterSEAV0.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV4.sol/MinterSetPriceV4.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +2 -2
- package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +2 -2
- package/artifacts/contracts/engine/V3/EngineFactoryV0.sol/EngineFactoryV0.json +20 -2
- package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +48 -12
- package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +76 -40
- package/artifacts/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol/GenArt721CoreV3_Engine_Flex_PROOF.json +15 -2
- package/artifacts/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol/AdminACLV0_PROHIBITION.json +2 -2
- package/artifacts/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol/GenArt721CoreV3_Engine_Flex_PROHIBITION.json +15 -2
- package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.json +37 -0
- package/artifacts/contracts/engine-registry/CoreRegistryV1.sol/CoreRegistryV1.json +2 -2
- package/artifacts/contracts/generator/AddressChunks.sol/AddressChunks.json +10 -0
- package/artifacts/contracts/generator/GenArt721GeneratorV0.sol/GenArt721GeneratorV0.json +333 -0
- package/artifacts/contracts/generator/GenArt721GeneratorV0.sol/ILegacyGenArt721CoreV2_PBAB_Flex.json +47 -0
- package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReader.sol/IBytecodeStorageReader.json +7 -7
- package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReaderV2.sol/IBytecodeStorageReaderV2.json +7 -7
- package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReader_Base.sol/IBytecodeStorageReader_Base.json +30 -0
- package/artifacts/contracts/interfaces/v0.8.x/ICoreRegistryV1.sol/ICoreRegistryV1.json +13 -0
- package/artifacts/contracts/interfaces/v0.8.x/IDelegateRegistry.sol/IDelegateRegistry.json +820 -0
- package/artifacts/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol/IDependencyRegistryV0.json +183 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +37 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +37 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +42 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +42 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.sol/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.json +37 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_PreV3p2.sol/IGenArt721CoreContractV3_Engine_PreV3p2.json +37 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV0.sol/IGenArt721CoreProjectScriptV0.json +59 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV1.sol/IGenArt721CoreProjectScriptV1.json +64 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV0.sol/IGenArt721CoreTokenHashProviderV0.json +30 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV1.sol/IGenArt721CoreTokenHashProviderV1.json +30 -0
- package/artifacts/contracts/interfaces/v0.8.x/IGenArt721GeneratorV0.sol/IGenArt721GeneratorV0.json +63 -0
- package/artifacts/contracts/interfaces/v0.8.x/IOwnedCreate2FactoryV0.sol/IOwnedCreate2FactoryV0.json +74 -0
- package/artifacts/contracts/interfaces/v0.8.x/IPMPAugmentHook.sol/IPMPAugmentHook.json +83 -0
- package/artifacts/contracts/interfaces/v0.8.x/IPMPConfigureHook.sol/IPMPConfigureHook.json +80 -0
- package/artifacts/contracts/interfaces/v0.8.x/IPMPV0.sol/IPMPV0.json +402 -0
- package/artifacts/contracts/interfaces/v0.8.x/ISeaDropShimForContract.sol/ISeaDropShimForContract.json +37 -0
- package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterMinPriceV0.sol/ISharedMinterMinPriceV0.json +37 -0
- package/artifacts/contracts/interfaces/v0.8.x/IUniversalBytecodeStorageReader.sol/IUniversalBytecodeStorageReader.json +69 -0
- package/artifacts/contracts/interfaces/v0.8.x/IWeb3Call.sol/IWeb3Call.json +47 -0
- package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ERC721SeaDropStructsErrorsAndEvents.sol/ERC721SeaDropStructsErrorsAndEvents.json +43 -0
- package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/INonFungibleSeaDropToken.sol/INonFungibleSeaDropToken.json +715 -0
- package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDrop.sol/ISeaDrop.json +1571 -0
- package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDropTokenContractMetadata.sol/ISeaDropTokenContractMetadata.json +345 -0
- package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropErrorsAndEvents.sol/SeaDropErrorsAndEvents.json +717 -0
- package/artifacts/contracts/libs/integration-refs/delegation-registry/DelegateRegistry.sol/DelegateRegistry.json +846 -0
- package/artifacts/contracts/libs/integration-refs/delegation-registry/libraries/RegistryHashes.sol/RegistryHashes.json +10 -0
- package/artifacts/contracts/libs/integration-refs/delegation-registry/libraries/RegistryOps.sol/RegistryOps.json +10 -0
- package/artifacts/contracts/libs/integration-refs/delegation-registry/libraries/RegistryStorage.sol/RegistryStorage.json +10 -0
- package/artifacts/contracts/libs/v0.8.x/AuthLib.sol/AuthLib.json +2 -2
- package/artifacts/contracts/libs/v0.8.x/Bytes32Strings.sol/Bytes32Strings.json +2 -2
- package/artifacts/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol/DependencyRegistryStorageLib.json +2 -2
- package/artifacts/contracts/libs/v0.8.x/ImmutableStringArray.sol/ImmutableStringArray.json +10 -0
- package/artifacts/contracts/libs/v0.8.x/JsonStatic.sol/JsonStatic.json +10 -0
- package/artifacts/contracts/libs/v0.8.x/V3FlexLib.sol/V3FlexLib.json +9 -22
- package/artifacts/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol/MaxInvocationsLib.json +2 -2
- package/artifacts/contracts/libs/v0.8.x/minter-libs/MinPriceLib.sol/MinPriceLib.json +24 -0
- package/artifacts/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol/PolyptychLib.json +2 -2
- package/artifacts/contracts/libs/v0.8.x/minter-libs/RAMLib.sol/RAMLib.json +2 -2
- package/artifacts/contracts/libs/v0.8.x/minter-libs/SEALib.sol/SEALib.json +2 -2
- package/artifacts/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol/SettlementExpLib.json +2 -2
- package/artifacts/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol/SplitFundsLib.json +2 -2
- package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +2 -2
- package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV2.sol/MinterFilterV2.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol/MinterDAExpHolderV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol/MinterDAExpSettlementV3.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterDAExpV5.sol/MinterDAExpV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterDALinHolderV5.sol/MinterDALinHolderV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterDALinV5.sol/MinterDALinV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterMinPriceMerkleV0.sol/MinterMinPriceMerkleV0.json +664 -0
- package/artifacts/contracts/minter-suite/Minters/MinterMinPriceV0.sol/MinterMinPriceV0.json +387 -0
- package/artifacts/contracts/minter-suite/Minters/MinterRAMV0.sol/MinterRAMV0.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSEAV1.sol/MinterSEAV1.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol/MinterSetPriceERC20V5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol/MinterSetPriceHolderV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol/MinterSetPriceMerkleV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol/MinterSetPricePolyptychERC20V5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol/MinterSetPricePolyptychV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV5.sol/MinterSetPriceV5.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/one-off/MinterSetPriceV5_SingleCore.sol/MinterSetPriceV5_SingleCore.json +2 -2
- package/artifacts/contracts/minter-suite/Minters/one-off/SeaDropXArtBlocksShim.sol/SeaDropXArtBlocksShim.json +1206 -0
- package/artifacts/contracts/mock/BytecodeV1LibCallsMock.sol/BytecodeV1LibCallsMock.json +2 -2
- package/artifacts/contracts/mock/BytecodeV2LibCallsMock.sol/BytecodeV2LibCallsMock.json +2 -2
- package/artifacts/contracts/mock/DummySharedMinter.sol/DummySharedMinter.json +2 -2
- package/artifacts/contracts/mock/ERC20MockAltDecimals.sol/ERC20MockAltDecimals.json +318 -0
- package/artifacts/contracts/mock/ForceSendMock.sol/ForceSendMock.json +2 -2
- package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +2 -2
- package/artifacts/contracts/mock/ImmutableStringArrayMock.sol/ImmutableStringArrayMock.json +69 -0
- package/artifacts/contracts/mock/MockAdminACLV0_PROHIBITION.sol/MockAdminACLV0Events_PROHIBITION.json +2 -2
- package/artifacts/contracts/mock/MockFileStore.sol/MockFileStore.json +35 -0
- package/artifacts/contracts/mock/MockPMPAugmentHook.sol/MockPMPAugmentHook.json +214 -0
- package/artifacts/contracts/mock/MockPMPConfigureHook.sol/MockPMPConfigureHook.json +236 -0
- package/artifacts/contracts/mock/OriginRegisterMock.sol/OriginRegisterMock.json +2 -2
- package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +2 -2
- package/artifacts/contracts/randomizer/deprecated/PolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +2 -2
- package/artifacts/contracts/randomizer/deprecated/RandomizerV2.sol/BasicRandomizerV2.json +2 -2
- package/artifacts/contracts/randomizer/shared/SharedRandomizerV0.sol/SharedRandomizerV0.json +2 -2
- package/artifacts/contracts/web3call/PMPV0.sol/PMPV0.json +629 -0
- package/artifacts/contracts/web3call/Web3Call.sol/Web3Call.json +66 -0
- package/artifacts/contracts/web3call/augment-hooks/AbstractPMPAugmentHook.sol/AbstractPMPAugmentHook.json +83 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectBaseGasFee.sol/InjectBaseGasFee.json +83 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectChromieSquiggleFloorPrice.sol/IUniswapV2Pair.json +60 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectChromieSquiggleFloorPrice.sol/InjectChromieSquiggleFloorPrice.json +107 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectIsNounsDaoMember.sol/InjectIsNounsDaoMember.json +96 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectIsProjectFullyMinted.sol/InjectIsProjectFullyMinted.json +83 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectPolyptychTokenHash.sol/InjectPolyptychTokenHash.json +141 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectTokenHashSeed.sol/InjectTokenHashSeed.json +99 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectTokenOwner.sol/InjectTokenOwner.json +99 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectTokenOwnerEthBalance.sol/InjectTokenOwnerEthBalance.json +83 -0
- package/artifacts/contracts/web3call/augment-hooks/InjectUSDCTotalSupply.sol/InjectUSDCTotalSupply.json +107 -0
- package/artifacts/contracts/web3call/configure-hooks/abstractPMPConfigureHook.sol/AbstractPMPConfigureHook.json +80 -0
- package/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2.sol +103 -0
- package/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2_Web3Call.sol +128 -0
- package/contracts/BytecodeStorageReaders/UniversalBytecodeStorageReader.sol +70 -0
- package/contracts/BytecodeStorageV2Writer.sol +69 -0
- package/contracts/DependencyRegistryV0.sol +296 -88
- package/contracts/GenArt721CoreV3_Curated.sol +133 -0
- package/contracts/OwnedCreate2FactoryV0.sol +173 -0
- package/contracts/engine/V3/EngineFactoryV0.sol +10 -2
- package/contracts/engine/V3/GenArt721CoreV3_Engine.sol +139 -70
- package/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol +148 -72
- package/contracts/generator/AddressChunks.sol +106 -0
- package/contracts/generator/GenArt721GeneratorV0.sol +1163 -0
- package/contracts/generator/scripty-support/Scripty.sol +5 -0
- package/contracts/interfaces/v0.8.x/IBytecodeStorageReader.sol +34 -36
- package/contracts/interfaces/v0.8.x/IBytecodeStorageReaderV2.sol +5 -3
- package/contracts/interfaces/v0.8.x/IBytecodeStorageReader_Base.sol +20 -0
- package/contracts/interfaces/v0.8.x/ICoreRegistryV1.sol +5 -0
- package/contracts/interfaces/v0.8.x/IDelegateRegistry.sol +318 -0
- package/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol +96 -0
- package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol +13 -2
- package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol +3 -1
- package/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV0.sol +22 -0
- package/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV1.sol +23 -0
- package/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV0.sol +11 -0
- package/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV1.sol +9 -0
- package/contracts/interfaces/v0.8.x/IGenArt721GeneratorV0.sol +14 -0
- package/contracts/interfaces/v0.8.x/IOwnedCreate2FactoryV0.sol +40 -0
- package/contracts/interfaces/v0.8.x/IPMPAugmentHook.sol +31 -0
- package/contracts/interfaces/v0.8.x/IPMPConfigureHook.sol +25 -0
- package/contracts/interfaces/v0.8.x/IPMPV0.sol +224 -0
- package/contracts/interfaces/v0.8.x/ISeaDropShimForContract.sol +19 -0
- package/contracts/interfaces/v0.8.x/ISharedMinterMinPriceV0.sol +22 -0
- package/contracts/interfaces/v0.8.x/ISharedMinterRequired.sol +10 -4
- package/contracts/interfaces/v0.8.x/IUniversalBytecodeStorageReader.sol +33 -0
- package/contracts/interfaces/v0.8.x/IWeb3Call.sol +28 -0
- package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ERC721SeaDropStructsErrorsAndEvents.sol +58 -0
- package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/INonFungibleSeaDropToken.sol +186 -0
- package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDrop.sol +337 -0
- package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDropTokenContractMetadata.sol +152 -0
- package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropErrorsAndEvents.sol +320 -0
- package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropStructs.sol +146 -0
- package/contracts/libs/integration-refs/delegation-registry/DelegateRegistry.sol +753 -0
- package/contracts/libs/integration-refs/delegation-registry/libraries/RegistryHashes.sol +359 -0
- package/contracts/libs/integration-refs/delegation-registry/libraries/RegistryOps.sol +31 -0
- package/contracts/libs/integration-refs/delegation-registry/libraries/RegistryStorage.sol +87 -0
- package/contracts/libs/v0.8.x/Bytes32Strings.sol +20 -0
- package/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol +14 -3
- package/contracts/libs/v0.8.x/ImmutableStringArray.sol +289 -0
- package/contracts/libs/v0.8.x/JsonStatic.sol +373 -0
- package/contracts/libs/v0.8.x/V3FlexLib.sol +16 -4
- package/contracts/libs/v0.8.x/minter-libs/MinPriceLib.sol +64 -0
- package/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol +107 -0
- package/contracts/minter-suite/Minters/MinterMinPriceMerkleV0.sol +765 -0
- package/contracts/minter-suite/Minters/MinterMinPriceV0.sol +462 -0
- package/contracts/minter-suite/Minters/one-off/SeaDropXArtBlocksShim.sol +869 -0
- package/contracts/mock/ERC20MockAltDecimals.sol +31 -0
- package/contracts/mock/ImmutableStringArrayMock.sol +47 -0
- package/contracts/mock/MockFileStore.sol +22 -0
- package/contracts/mock/MockPMPAugmentHook.sol +170 -0
- package/contracts/mock/MockPMPConfigureHook.sol +78 -0
- package/contracts/web3call/PMPV0.sol +1125 -0
- package/contracts/web3call/Web3Call.sol +25 -0
- package/contracts/web3call/augment-hooks/AbstractPMPAugmentHook.sol +46 -0
- package/contracts/web3call/augment-hooks/InjectBaseGasFee.sol +57 -0
- package/contracts/web3call/augment-hooks/InjectChromieSquiggleFloorPrice.sol +103 -0
- package/contracts/web3call/augment-hooks/InjectIsNounsDaoMember.sol +66 -0
- package/contracts/web3call/augment-hooks/InjectIsProjectFullyMinted.sol +73 -0
- package/contracts/web3call/augment-hooks/InjectPolyptychTokenHash.sol +88 -0
- package/contracts/web3call/augment-hooks/InjectTokenHashSeed.sol +62 -0
- package/contracts/web3call/augment-hooks/InjectTokenOwner.sol +60 -0
- package/contracts/web3call/augment-hooks/InjectTokenOwnerEthBalance.sol +61 -0
- package/contracts/web3call/augment-hooks/InjectUSDCTotalSupply.sol +69 -0
- package/contracts/web3call/configure-hooks/abstractPMPConfigureHook.sol +41 -0
- package/package.json +23 -21
|
@@ -3,6 +3,19 @@
|
|
|
3
3
|
"contractName": "DependencyRegistryV0",
|
|
4
4
|
"sourceName": "contracts/DependencyRegistryV0.sol",
|
|
5
5
|
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"anonymous": false,
|
|
8
|
+
"inputs": [
|
|
9
|
+
{
|
|
10
|
+
"indexed": true,
|
|
11
|
+
"internalType": "address",
|
|
12
|
+
"name": "coreRegistryAddress",
|
|
13
|
+
"type": "address"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"name": "CoreRegistryAddressUpdated",
|
|
17
|
+
"type": "event"
|
|
18
|
+
},
|
|
6
19
|
{
|
|
7
20
|
"anonymous": false,
|
|
8
21
|
"inputs": [
|
|
@@ -326,6 +339,32 @@
|
|
|
326
339
|
"name": "SupportedCoreContractAdded",
|
|
327
340
|
"type": "event"
|
|
328
341
|
},
|
|
342
|
+
{
|
|
343
|
+
"anonymous": false,
|
|
344
|
+
"inputs": [
|
|
345
|
+
{
|
|
346
|
+
"indexed": true,
|
|
347
|
+
"internalType": "address",
|
|
348
|
+
"name": "coreContractAddress",
|
|
349
|
+
"type": "address"
|
|
350
|
+
}
|
|
351
|
+
],
|
|
352
|
+
"name": "SupportedCoreContractOverrideAdded",
|
|
353
|
+
"type": "event"
|
|
354
|
+
},
|
|
355
|
+
{
|
|
356
|
+
"anonymous": false,
|
|
357
|
+
"inputs": [
|
|
358
|
+
{
|
|
359
|
+
"indexed": true,
|
|
360
|
+
"internalType": "address",
|
|
361
|
+
"name": "coreContractAddress",
|
|
362
|
+
"type": "address"
|
|
363
|
+
}
|
|
364
|
+
],
|
|
365
|
+
"name": "SupportedCoreContractOverrideRemoved",
|
|
366
|
+
"type": "event"
|
|
367
|
+
},
|
|
329
368
|
{
|
|
330
369
|
"anonymous": false,
|
|
331
370
|
"inputs": [
|
|
@@ -339,6 +378,19 @@
|
|
|
339
378
|
"name": "SupportedCoreContractRemoved",
|
|
340
379
|
"type": "event"
|
|
341
380
|
},
|
|
381
|
+
{
|
|
382
|
+
"anonymous": false,
|
|
383
|
+
"inputs": [
|
|
384
|
+
{
|
|
385
|
+
"indexed": true,
|
|
386
|
+
"internalType": "address",
|
|
387
|
+
"name": "newReader",
|
|
388
|
+
"type": "address"
|
|
389
|
+
}
|
|
390
|
+
],
|
|
391
|
+
"name": "UniversalBytecodeStorageReaderUpdated",
|
|
392
|
+
"type": "event"
|
|
393
|
+
},
|
|
342
394
|
{
|
|
343
395
|
"inputs": [
|
|
344
396
|
{
|
|
@@ -506,7 +558,7 @@
|
|
|
506
558
|
"type": "address"
|
|
507
559
|
}
|
|
508
560
|
],
|
|
509
|
-
"name": "
|
|
561
|
+
"name": "addSupportedCoreContractOverride",
|
|
510
562
|
"outputs": [],
|
|
511
563
|
"stateMutability": "nonpayable",
|
|
512
564
|
"type": "function"
|
|
@@ -553,6 +605,19 @@
|
|
|
553
605
|
"stateMutability": "view",
|
|
554
606
|
"type": "function"
|
|
555
607
|
},
|
|
608
|
+
{
|
|
609
|
+
"inputs": [],
|
|
610
|
+
"name": "currentCoreRegistry",
|
|
611
|
+
"outputs": [
|
|
612
|
+
{
|
|
613
|
+
"internalType": "address",
|
|
614
|
+
"name": "",
|
|
615
|
+
"type": "address"
|
|
616
|
+
}
|
|
617
|
+
],
|
|
618
|
+
"stateMutability": "view",
|
|
619
|
+
"type": "function"
|
|
620
|
+
},
|
|
556
621
|
{
|
|
557
622
|
"inputs": [
|
|
558
623
|
{
|
|
@@ -673,6 +738,65 @@
|
|
|
673
738
|
"stateMutability": "view",
|
|
674
739
|
"type": "function"
|
|
675
740
|
},
|
|
741
|
+
{
|
|
742
|
+
"inputs": [
|
|
743
|
+
{
|
|
744
|
+
"internalType": "string",
|
|
745
|
+
"name": "dependencyNameAndVersion",
|
|
746
|
+
"type": "string"
|
|
747
|
+
}
|
|
748
|
+
],
|
|
749
|
+
"name": "getDependencyDetailsFromString",
|
|
750
|
+
"outputs": [
|
|
751
|
+
{
|
|
752
|
+
"internalType": "string",
|
|
753
|
+
"name": "nameAndVersion",
|
|
754
|
+
"type": "string"
|
|
755
|
+
},
|
|
756
|
+
{
|
|
757
|
+
"internalType": "string",
|
|
758
|
+
"name": "licenseType",
|
|
759
|
+
"type": "string"
|
|
760
|
+
},
|
|
761
|
+
{
|
|
762
|
+
"internalType": "string",
|
|
763
|
+
"name": "preferredCDN",
|
|
764
|
+
"type": "string"
|
|
765
|
+
},
|
|
766
|
+
{
|
|
767
|
+
"internalType": "uint24",
|
|
768
|
+
"name": "additionalCDNCount",
|
|
769
|
+
"type": "uint24"
|
|
770
|
+
},
|
|
771
|
+
{
|
|
772
|
+
"internalType": "string",
|
|
773
|
+
"name": "preferredRepository",
|
|
774
|
+
"type": "string"
|
|
775
|
+
},
|
|
776
|
+
{
|
|
777
|
+
"internalType": "uint24",
|
|
778
|
+
"name": "additionalRepositoryCount",
|
|
779
|
+
"type": "uint24"
|
|
780
|
+
},
|
|
781
|
+
{
|
|
782
|
+
"internalType": "string",
|
|
783
|
+
"name": "dependencyWebsite",
|
|
784
|
+
"type": "string"
|
|
785
|
+
},
|
|
786
|
+
{
|
|
787
|
+
"internalType": "bool",
|
|
788
|
+
"name": "availableOnChain",
|
|
789
|
+
"type": "bool"
|
|
790
|
+
},
|
|
791
|
+
{
|
|
792
|
+
"internalType": "uint24",
|
|
793
|
+
"name": "scriptCount",
|
|
794
|
+
"type": "uint24"
|
|
795
|
+
}
|
|
796
|
+
],
|
|
797
|
+
"stateMutability": "view",
|
|
798
|
+
"type": "function"
|
|
799
|
+
},
|
|
676
800
|
{
|
|
677
801
|
"inputs": [
|
|
678
802
|
{
|
|
@@ -1099,7 +1223,7 @@
|
|
|
1099
1223
|
"type": "address"
|
|
1100
1224
|
}
|
|
1101
1225
|
],
|
|
1102
|
-
"name": "
|
|
1226
|
+
"name": "removeSupportedCoreContractOverride",
|
|
1103
1227
|
"outputs": [],
|
|
1104
1228
|
"stateMutability": "nonpayable",
|
|
1105
1229
|
"type": "function"
|
|
@@ -1111,6 +1235,25 @@
|
|
|
1111
1235
|
"stateMutability": "nonpayable",
|
|
1112
1236
|
"type": "function"
|
|
1113
1237
|
},
|
|
1238
|
+
{
|
|
1239
|
+
"inputs": [
|
|
1240
|
+
{
|
|
1241
|
+
"internalType": "string",
|
|
1242
|
+
"name": "input",
|
|
1243
|
+
"type": "string"
|
|
1244
|
+
}
|
|
1245
|
+
],
|
|
1246
|
+
"name": "stringToBytes32",
|
|
1247
|
+
"outputs": [
|
|
1248
|
+
{
|
|
1249
|
+
"internalType": "bytes32",
|
|
1250
|
+
"name": "",
|
|
1251
|
+
"type": "bytes32"
|
|
1252
|
+
}
|
|
1253
|
+
],
|
|
1254
|
+
"stateMutability": "pure",
|
|
1255
|
+
"type": "function"
|
|
1256
|
+
},
|
|
1114
1257
|
{
|
|
1115
1258
|
"inputs": [
|
|
1116
1259
|
{
|
|
@@ -1124,6 +1267,19 @@
|
|
|
1124
1267
|
"stateMutability": "nonpayable",
|
|
1125
1268
|
"type": "function"
|
|
1126
1269
|
},
|
|
1270
|
+
{
|
|
1271
|
+
"inputs": [
|
|
1272
|
+
{
|
|
1273
|
+
"internalType": "address",
|
|
1274
|
+
"name": "_coreRegistryAddress",
|
|
1275
|
+
"type": "address"
|
|
1276
|
+
}
|
|
1277
|
+
],
|
|
1278
|
+
"name": "updateCoreRegistryAddress",
|
|
1279
|
+
"outputs": [],
|
|
1280
|
+
"stateMutability": "nonpayable",
|
|
1281
|
+
"type": "function"
|
|
1282
|
+
},
|
|
1127
1283
|
{
|
|
1128
1284
|
"inputs": [
|
|
1129
1285
|
{
|
|
@@ -1292,60 +1448,23 @@
|
|
|
1292
1448
|
"outputs": [],
|
|
1293
1449
|
"stateMutability": "nonpayable",
|
|
1294
1450
|
"type": "function"
|
|
1295
|
-
}
|
|
1296
|
-
|
|
1297
|
-
"bytecode": "0x608060405234801561001057600080fd5b50613a68806100206000396000f3fe608060405234801561001057600080fd5b50600436106102555760003560e01c80639532f2f4116101425780639532f2f414610463578063a0a82bd314610478578063a1a7a47b1461048b578063ad6b414d1461049e578063b1d24cb2146104b1578063b86b69f1146104c4578063ba228512146104cc578063be3d3ee6146104df578063c0739270146104f2578063c0cd565f14610505578063c42ae81414610518578063c4d66de81461052b578063caaa3bb71461053e578063cc86ba4b14610551578063cea2961a14610564578063dbc71ccb14610577578063dc33f4ae1461058a578063dfa3be531461059d578063f0b99382146105b0578063f146f17f146105c3578063f2fde38b146105d6578063f8ac18be146105e9578063f9c0fae6146105fc578063fb5cd19b1461060f578063fed37e821461061757600080fd5b8062e879031461025a57806307f9f78614610283578063137621861461029857806316a1012d146102ad578063199eb8e0146102c05780631a051d49146102d35780631e9bef46146102e6578063230448b1146102fb57806325ffb3761461031e5780633e76919a1461034657806344346a5f14610359578063447b051a1461036f5780634a78a932146103825780634bd1a387146103955780634f5267ef146103a8578063518cb3df146103bb57806352ccc021146103ce5780635668bc5e146103e15780635710f83d146103f4578063613d57fd1461040757806366d549a11461041a5780636dfa9f561461042d578063715018a61461044057806371b70a71146104485780638da5cb5b1461045b575b600080fd5b61026d610268366004612f39565b61061f565b60405161027a9190612fab565b60405180910390f35b61028b6106f8565b60405161027a9190612fbe565b6102ab6102a63660046130ce565b6107ae565b005b6102ab6102bb3660046130ce565b61085f565b6102ab6102ce366004613139565b610907565b6102ab6102e13660046130ce565b6109c7565b6102ee610a78565b60405161027a9190613154565b61030e610309366004613168565b610a91565b604051901515815260200161027a565b61033161032c3660046131bc565b610b45565b60405161027a999897969594939291906131d5565b6102ee6103543660046131bc565b610d80565b610361610daf565b60405190815260200161027a565b6102ab61037d366004613270565b610dc9565b61026d6103903660046132a3565b610e57565b6102ab6103a33660046132cd565b610faa565b6102ab6103b63660046132a3565b61107c565b61026d6103c9366004612f39565b61115e565b6102ab6103dc3660046131bc565b61135c565b6103616103ef3660046131bc565b611481565b6102ab6104023660046132f9565b6114ae565b6103616104153660046131bc565b611578565b6102ab61042836600461333f565b61159e565b6102ab61043b366004612f39565b6116f4565b6102ab6117f9565b61026d610456366004612f39565b61180d565b6102ee611896565b61046b6118aa565b60405161027a91906133da565b6102ab6104863660046132f9565b611968565b6102ab610499366004612f39565b611a30565b6102ab6104ac3660046131bc565b611b0f565b61026d6104bf3660046131bc565b611c14565b610361611c42565b6103616104da366004612f39565b611c57565b6102ab6104ed3660046132f9565b611d2d565b6102ab6105003660046131bc565b611dac565b6102ab61051336600461343c565b611ea2565b6102ab6105263660046132f9565b611f43565b6102ab610539366004613139565b611fb3565b6102ab61054c3660046130ce565b6120ce565b61026d61055f3660046131bc565b612178565b61030e610572366004613139565b6121a6565b6102ab610585366004613139565b6121bd565b6102ab6105983660046132f9565b61226b565b6102ee6105ab366004612f39565b61230a565b61026d6105be366004612f39565b612365565b6102ab6105d13660046132f9565b6123bd565b6102ab6105e4366004613139565b612480565b6102ab6105f73660046131bc565b6124f9565b6102ab61060a3660046132f9565b61267e565b61046b6126f1565b61036161279f565b6060600061062b6127b4565b600085815260059190910160205260409020600781015490915061065590849062ffffff166127d8565b60008381526002820160205260409020805461067090613471565b80601f016020809104026020016040519081016040528092919081815260200182805461069c90613471565b80156106e95780601f106106be576101008083540402835291602001916106e9565b820191906000526020600020905b8154815290600101906020018083116106cc57829003601f168201915b50505050509150505b92915050565b606060006107046127b4565b905060006107148260070161281c565b90506000816001600160401b038111156107305761073061300b565b604051908082528060200260200182016040528015610759578160200160208202803683370190505b50905060005b828110156107a6576107746007850182612826565b828281518110610786576107866134a5565b6001600160a01b039092166020928302919091019091015260010161075f565b509392505050565b6107be6309bb10c360e11b612832565b6107c781612882565b6107d0836128d1565b60006107da6127b4565b600085815260059190910160205260409020600781015490915061080490849062ffffff166127d8565b6000838152600282016020526040902061081e838261351f565b50837f5f667fb1eaf23e0fee1a9dcc154d842202b184eb9ad83502c00c784808a8d00d83856040516108519291906135d8565b60405180910390a250505050565b61086f6316a1012d60e01b612832565b61087881612882565b6108818361292e565b600061088b6127b4565b60008581526006919091016020526040902060018101549091506108b590849062ffffff166127d8565b6108be8261298d565b60008481526020839052604080822080546001600160a01b0319166001600160a01b039490941693909317909255905185916000805160206139f383398151915291a250505050565b61091662ccf5c760e51b612832565b61092b816109226127b4565b60070190612a3d565b6109905760405162461bcd60e51b815260206004820152602b60248201527f436f726520636f6e747261637420616c72656164792072656d6f766564206f7260448201526a081b9bdd081a5b881cd95d60aa1b60648201526084015b60405180910390fd5b6040516001600160a01b038216907f2453d2f77bae1012d39e2257356d2566625ebe0ffd6094198aa051689dc65ba090600090a250565b6109d7631a051d4960e01b612832565b6109e081612882565b6109e9836128d1565b60006109f36127b4565b6000858152600591909101602052604090206007810154909150610a24908490600160301b900462ffffff166127d8565b610a2d8261298d565b600084815260068301602052604080822080546001600160a01b0319166001600160a01b03949094169390931790925590518591600080516020613a1383398151915291a250505050565b6000610a826127b4565b546001600160a01b0316919050565b600080610a9c611896565b6001600160a01b031614158015610b3b5750610ab66127b4565b546040516217798b60e61b81526001600160a01b03868116600483015285811660248301526001600160e01b031985166044830152909116906305de62c0906064016020604051808303816000875af1158015610b17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3b91906135fa565b90505b9392505050565b606080606060006060600060606000806000610b5f6127b4565b60008c8152600591909101602052604090209050610b7c8b612a52565b8154610b8790612a52565b6007830154600184018054909162ffffff8082169260038801926301000000810483169260058a0192600160301b90920416801515918790610bc890613471565b80601f0160208091040260200160405190810160405280929190818152602001828054610bf490613471565b8015610c415780601f10610c1657610100808354040283529160200191610c41565b820191906000526020600020905b815481529060010190602001808311610c2457829003601f168201915b50505050509650848054610c5490613471565b80601f0160208091040260200160405190810160405280929190818152602001828054610c8090613471565b8015610ccd5780601f10610ca257610100808354040283529160200191610ccd565b820191906000526020600020905b815481529060010190602001808311610cb057829003601f168201915b50505050509450828054610ce090613471565b80601f0160208091040260200160405190810160405280929190818152602001828054610d0c90613471565b8015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509250995099509950995099509950995099509950509193959799909294969850565b600080610d8b6127b4565b9050610da283610d9d8360070161281c565b6127d8565b610b3e6007820184612826565b6000610dc4610dbc6127b4565b60010161281c565b905090565b610dd963223d828d60e11b612832565b610de2816128d1565b610deb83612abd565b80610df46127b4565b6001600160a01b03851660008181526009929092016020908152604080842087855282529283902093909355905183815284927ff2f4de0c34a4899f5cf7a30aced71b0c27f629f80fb61efc06c7a12ecabdb7ba910160405180910390a3505050565b6060610e6283612abd565b6000610e6c6127b4565b6001600160a01b03851660009081526009919091016020908152604080832086845290915290205490508015610ead57610ea581612a52565b9150506106f2565b604051633ae7357560e21b8152600481018490526001600160a01b0385169063eb9cd5d490602401600060405180830381865afa925050508015610f1357506040513d6000823e601f3d908101601f19168201604052610f10919081019061366c565b60015b610f975760405162461bcd60e51b815260206004820152604960248201527f436f6e747261637420646f6573206e6f7420696d706c656d656e742070726f6a60448201527f65637453637269707444657461696c7320616e6420686173206e6f206f7665726064820152683934b2329039b2ba1760b91b608482015260a401610987565b829450505050506106f2565b5092915050565b610fba634bd1a38760e01b612832565b610fc381612b13565b610fcc826128d1565b6000610fd66127b4565b600084815260059190910160209081526040808320600781018054600160301b9081900462ffffff9081168752600684019095529290942080546001600160a01b0319166001600160a01b038816179055925492935061103992041660016136ee565b60078201805462ffffff92909216600160301b0262ffffff60301b199092169190911790556040518390600080516020613a1383398151915290600090a2505050565b61108c634f5267ef60e01b612832565b60006110966127b4565b6001600160a01b038416600090815260098201602090815260408083208684529091529020549091506111095760405162461bcd60e51b815260206004820152601b60248201527a139bc81bdd995c9c9a5919481cd95d08199bdc881c1c9bda9958dd602a1b6044820152606401610987565b6001600160a01b03831660008181526009830160209081526040808320868452909152808220829055518492917f618154ee1a16009759db8e59ff744e79dd094831be73c4b9383f885678c20b7391a3505050565b6060600061116a6127b4565b600085815260059190910160205260409020600781015490915061119b908490600160301b900462ffffff166127d8565b600083815260068201602052604080822054905163cc31a33160e01b81526001600160a01b03909116919073__$55f4e50e6128becd8bf164b272db98df09$__9063cc31a331906111f0908590600401613154565b602060405180830381865af415801561120d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611231919061370a565b90507f554e4b4e4f574e5f56455253494f4e5f535452494e475f5f5f5f5f5f5f5f5f2081036112e057604051632475d70960e01b815273__$55f4e50e6128becd8bf164b272db98df09$__90632475d70990611291908590600401613154565b600060405180830381865af41580156112ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112d69190810190613723565b93505050506106f2565b604051630eacc5e760e31b815273__$55f4e50e6128becd8bf164b272db98df09$__906375662f3890611317908590600401613154565b600060405180830381865af4158015611334573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112d6919081019061376b565b61136c6352ccc02160e01b612832565b611375816128d1565b600061137f6127b4565b6000838152600591909101602052604090206007810154909150600160301b900462ffffff166113f15760405162461bcd60e51b815260206004820152601e60248201527f746865726520617265206e6f207363726970747320746f2072656d6f766500006044820152606401610987565b6007810154600682019060009061141690600190600160301b900462ffffff1661379f565b62ffffff908116825260208201929092526040908101600090812080546001600160a01b031916905560078401805462ffffff60301b198116600160301b918290048616600019019095160293909317909255518391600080516020613a1383398151915291a25050565b600061148b6127b4565b6000928352600501602052506040902060070154600160301b900462ffffff1690565b6114be635710f83d60e01b612832565b6114c781612882565b6114d0826128d1565b60006114da6127b4565b60008481526005919091016020908152604080832060078101546301000000900462ffffff168085526004820190935292209192509061151a848261351f565b506115268160016137bb565b8260070160036101000a81548162ffffff021916908362ffffff160217905550837ffe07adc986f904acd19c0f4f5d0716973976f0450de010a753a52d119ddadbde84836040516108519291906135d8565b60006115826127b4565b600092835260060160205250604090206001015462ffffff1690565b6115ae6366d549a160e01b612832565b6115b78461292e565b6115c48560406001612b67565b61160d5760405162461bcd60e51b815260206004820152601a60248201527901b5d5cdd0818dbdb9d185a5b88195e1858dd1b1e481bdb9948160361b6044820152606401610987565b60006116176127b4565b90506116266001820187612bdb565b61166e5760405162461bcd60e51b8152602060048201526019602482015278446570656e64656e637920616c72656164792065786973747360381b6044820152606401610987565b600086815260058201602052604090208581556001810161168f868261351f565b506003810161169e858261351f565b50600581016116ad848261351f565b5085877f14d15ecf0e955bdd7a921efba642deef4d718696d3fc369454c84817fed0fb778787876040516116e3939291906137ce565b60405180910390a350505050505050565b6117046336fd4fab60e11b612832565b61170d826128d1565b60006117176127b4565b600084815260058201602052604090206007810154919250906301000000900462ffffff1661174684826127d8565b6000611753600183613811565b60008781526005860160209081526040808320848452600490810183528184208a855290880190925290912091925061178c9082613824565b50600081815260048401602052604081206117a691612eeb565b60078301805465ffffff0000001916630100000062ffffff841602179055604051859087907fc02725dfc9639e3399432cdae3db1c062229f4cc41bcc18631517617c020b71c90600090a3505050505050565b611801612be7565b61180b6000612c46565b565b606060006118196127b4565b600085815260069190910160205260409020600181015490915061184390849062ffffff166127d8565b60008381526020829052604080822054905163cc31a33160e01b81526001600160a01b03909116919073__$55f4e50e6128becd8bf164b272db98df09$__9063cc31a331906111f0908590600401613154565b6000610dc46033546001600160a01b031690565b606060006118b66127b4565b905060006118c68260010161281c565b90506000816001600160401b038111156118e2576118e261300b565b60405190808252806020026020018201604052801561191557816020015b60608152602001906001900390816119005790505b50905060005b828110156107a6576119386119336001860183612826565b612a52565b82828151811061194a5761194a6134a5565b60200260200101819052508080611960906138f8565b91505061191b565b61197863a0a82bd360e01b612832565b61198181612882565b61198a8261292e565b60006119946127b4565b60008481526006919091016020526040902090506119b18261298d565b6001828101805462ffffff908116600090815260208690526040902080546001600160a01b0319166001600160a01b039590951694909417909355546119f89216906136ee565b60018201805462ffffff191662ffffff9290921691909117905560405183906000805160206139f383398151915290600090a2505050565b611a4063a1a7a47b60e01b612832565b611a49826128d1565b6000611a536127b4565b600084815260059190910160205260409020600781015490915062ffffff16611a7c83826127d8565b6000611a89600183613811565b60008181526002850160205260408082208783529120919250611aac9082613824565b5060008181526002840160205260408120611ac691612eeb565b60078301805462ffffff191662ffffff8316179055604051849086907f225454b600cf489553fde6e3b7f5e458b1093c035390b678067ea799b3b016cd90600090a35050505050565b611b1f63ad6b414d60e01b612832565b611b288161292e565b6000611b326127b4565b600083815260069190910160205260409020600181015490915062ffffff1680611ba95760405162461bcd60e51b815260206004820152602260248201527f5468657265206973206e6f206c6963656e7365207465787420746f2072656d6f604482015261766560f01b6064820152608401610987565b816000611bb760018461379f565b62ffffff908116825260208201929092526040908101600090812080546001600160a01b031916905560018501805462ffffff19166000198601909416939093179092555184916000805160206139f383398151915291a2505050565b60606000611c206127b4565b9050611c3283610d9d8360010161281c565b610b3e6119336001830185612826565b6000610dc4611c4f6127b4565b60070161281c565b600080611c626127b4565b6000858152600591909101602052604090206007810154909150611c93908490600160301b900462ffffff166127d8565b60008381526006820160205260409081902054905163cc31a33160e01b815273__$55f4e50e6128becd8bf164b272db98df09$__9163cc31a33191611ce4916001600160a01b031690600401613154565b602060405180830381865af4158015611d01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d25919061370a565b949350505050565b611d3d635f1e9f7360e11b612832565b611d46826128d1565b80611d4f6127b4565b60008481526005919091016020526040902060010190611d6f908261351f565b50817fc9890a31ec780bb5a8a017d683d3913f97260548d71c2cee78194ed2833f023582604051611da09190612fab565b60405180910390a25050565b611dbc630c07392760e41b612832565b80611e155760405162461bcd60e51b815260206004820152602360248201527f4c6963656e736520747970652063616e6e6f7420626520656d70747920737472604482015262696e6760e81b6064820152608401610987565b611e2a81611e216127b4565b60030190612bdb565b611e745760405162461bcd60e51b815260206004820152601b60248201527a4c6963656e7365207479706520616c72656164792065786973747360281b6044820152606401610987565b60405181907fad5dcce4588345db351371d105540f3fb69966f418d923539f19d5f44a1cfc4b90600090a250565b611eb263c0cd565f60e01b612832565b611ebb81612b13565b611ec4836128d1565b6000611ece6127b4565b6000858152600591909101602052604090206007810154909150611eff908490600160301b900462ffffff166127d8565b600083815260068201602052604080822080546001600160a01b0319166001600160a01b038616179055518591600080516020613a1383398151915291a250505050565b611f5363310aba0560e21b612832565b611f5c826128d1565b80611f656127b4565b60008481526005918201602052604090200190611f82908261351f565b50817f94747dffac14b8b9a15e699c998cc8f42ad81f21ae95e155c8a1c49403117b8b82604051611da09190612fab565b600054610100900460ff1615808015611fd35750600054600160ff909116105b80611fed5750303b158015611fed575060005460ff166001145b6120505760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610987565b6000805460ff191660011790558015612073576000805461ff0019166101001790555b61207b612c79565b61208482612c46565b80156120ca576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6120de63caaa3bb760e01b612832565b6120e781612882565b6120f0836128d1565b60006120fa6127b4565b600085815260059190910160205260409020600781015490915061212b9084906301000000900462ffffff166127d8565b60008381526004820160205260409020612145838261351f565b50837ffe07adc986f904acd19c0f4f5d0716973976f0450de010a753a52d119ddadbde83856040516108519291906135d8565b606060006121846127b4565b905061219683610d9d8360030161281c565b610b3e6119336003830185612826565b60006106f2826121b46127b4565b60070190612ca8565b6121cd63dbc71ccb60e01b612832565b6121d681612b13565b6121eb816121e26127b4565b60070190612cbd565b6122345760405162461bcd60e51b815260206004820152601a60248201527910dbdb9d1c9858dd08185b1c9958591e481cdd5c1c1bdc9d195960321b6044820152606401610987565b6040516001600160a01b038216907f59e1b889b92ad05213b7934a67c5d824348c868455d1c741a2cfe16e46d832dc90600090a250565b61227b636e19fa5760e11b612832565b61228481612882565b61228d826128d1565b60006122976127b4565b60008481526005919091016020526040902090506122b48261298d565b600782018054600160301b9081900462ffffff9081166000908152600686016020526040902080546001600160a01b0319166001600160a01b0395909516949094179093559054611039929190041660016136ee565b6000806123156127b4565b6000858152600591909101602052604090206007810154909150612346908490600160301b900462ffffff166127d8565b60009283526006016020525060409020546001600160a01b0316919050565b606060006123716127b4565b60008581526005919091016020526040902060078101549091506123a29084906301000000900462ffffff166127d8565b60008381526004820160205260409020805461067090613471565b6123cd63f146f17f60e01b612832565b6123d681612882565b6123df826128d1565b60006123e96127b4565b600084815260059190910160209081526040808320600781015462ffffff1680855260028201909352922091925090612422848261351f565b5061242e8160016137bb565b8260070160006101000a81548162ffffff021916908362ffffff160217905550837f5f667fb1eaf23e0fee1a9dcc154d842202b184eb9ad83502c00c784808a8d00d84836040516108519291906135d8565b612488612be7565b6001600160a01b0381166124ed5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610987565b6124f681612c46565b50565b612509637c560c5f60e11b612832565b612512816128d1565b600061251c6127b4565b6000838152600582016020526040902060078101549192509062ffffff16158015612555575060078101546301000000900462ffffff16155b801561256f57506007810154600160301b900462ffffff16155b6125f15760405162461bcd60e51b815260206004820152604760248201527f43616e6e6f742072656d6f766520646570656e64656e6379207769746820616460448201527f646974696f6e616c2043444e732c207265706f7369746f726965732c206f72206064820152667363726970747360c81b608482015260a401610987565b6125fe6001830184612cd2565b5060008381526005830160205260408120818155906126206001830182612eeb565b61262e600383016000612eeb565b61263c600583016000612eeb565b5060070180546001600160481b031916905560405183907f60e2aa021c4f5303dd65e2173f0180636e4d42eaefc6187278e92bee9d06aa7290600090a2505050565b61268e637ce07d7360e11b612832565b612697826128d1565b806126a06127b4565b600084815260059190910160205260409020600301906126c0908261351f565b50817f774918414e4887efe5349a305fe253ee8b1e3fe0c2117012f0c215645693cbfd82604051611da09190612fab565b606060006126fd6127b4565b9050600061270d8260030161281c565b90506000816001600160401b038111156127295761272961300b565b60405190808252806020026020018201604052801561275c57816020015b60608152602001906001900390816127475790505b50905060005b828110156107a65761277a6119336003860183612826565b82828151811061278c5761278c6134a5565b6020908102919091010152600101612762565b6000610dc46127ac6127b4565b60030161281c565b7fb1832496845cc2c2d1bd0879f9ba0b1ef7ffcfdc79a541ee494477d8e10b9a3190565b8082106120ca5760405162461bcd60e51b8152602060048201526012602482015271496e646578206f7574206f662072616e676560701b6044820152606401610987565b60006106f2825490565b6000610b3e8383612cde565b61283d333083610a91565b6124f65760405162461bcd60e51b815260206004820152601660248201527513db9b1e4810591b5a5b881050d308185b1b1bddd95960521b6044820152606401610987565b80516000036124f65760405162461bcd60e51b815260206004820152601b60248201527a4d75737420696e707574206e6f6e2d656d70747920737472696e6760281b6044820152606401610987565b6128e6816128dd6127b4565b60010190612d08565b6124f65760405162461bcd60e51b815260206004820152601960248201527811195c195b99195b98de48191bd95cc81b9bdd08195e1a5cdd603a1b6044820152606401610987565b6129438161293a6127b4565b60030190612d08565b6124f65760405162461bcd60e51b815260206004820152601b60248201527a131a58d95b9cd9481d1e5c1948191bd95cc81b9bdd08195e1a5cdd602a1b6044820152606401610987565b6000807f42797465636f646553746f726167655f56312e302e305f5f5f5f5f5f5f5f5f2030846040516020016129c593929190613911565b60405160208183030381529060405290508051602082016000f091506001600160a01b038216612a375760405162461bcd60e51b815260206004820152601e60248201527f436f6e7472616374417353746f726167653a205772697465204572726f7200006044820152606401610987565b50919050565b6000610b3e836001600160a01b038416612d14565b606060005b828160ff1660208110612a6c57612a6c6134a5565b1a60f81b6001600160f81b03191615801590612a8b575060208160ff16105b15612aa25780612a9a81613972565b915050612a57565b60405191506040820160405280825282602083015250919050565b612ac9816121b46127b4565b6124f65760405162461bcd60e51b815260206004820152601b60248201527a10dbdc994818dbdb9d1c9858dd081b9bdd081cdd5c1c1bdc9d1959602a1b6044820152606401610987565b6001600160a01b0381166124f65760405162461bcd60e51b815260206004820152601b60248201527a4d75737420696e707574206e6f6e2d7a65726f206164647265737360281b6044820152606401610987565b60008060005b60208160ff161015612bc7576000868260ff1660208110612b9057612b906134a5565b1a90508015801590612ba5575060808160ff16105b15612bbe578560ff168160ff1603612bbe578260010192505b50600101612b6d565b8360ff168260ff1614925050509392505050565b6000610b3e8383612e07565b33612bf0611896565b6001600160a01b03161461180b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610987565b612c4f81612e51565b80612c586127b4565b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16612ca05760405162461bcd60e51b815260040161098790613991565b61180b612ea3565b6000610b3e836001600160a01b038416612ed3565b6000610b3e836001600160a01b038416612e07565b6000610b3e8383612d14565b6000826000018281548110612cf557612cf56134a5565b9060005260206000200154905092915050565b6000610b3e8383612ed3565b60008181526001830160205260408120548015612dfd576000612d38600183613811565b8554909150600090612d4c90600190613811565b9050818114612db1576000866000018281548110612d6c57612d6c6134a5565b9060005260206000200154905080876000018481548110612d8f57612d8f6134a5565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612dc257612dc26139dc565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506106f2565b60009150506106f2565b6000612e138383612ed3565b612e49575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556106f2565b5060006106f2565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16612eca5760405162461bcd60e51b815260040161098790613991565b61180b33612c46565b60009081526001919091016020526040902054151590565b508054612ef790613471565b6000825580601f10612f07575050565b601f0160209004906000526020600020908101906124f691905b80821115612f355760008155600101612f21565b5090565b60008060408385031215612f4c57600080fd5b50508035926020909101359150565b60005b83811015612f76578181015183820152602001612f5e565b50506000910152565b60008151808452612f97816020860160208601612f5b565b601f01601f19169290920160200192915050565b602081526000610b3e6020830184612f7f565b6020808252825182820181905260009190848201906040850190845b81811015612fff5783516001600160a01b031683529284019291840191600101612fda565b50909695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156130495761304961300b565b604052919050565b60006001600160401b0382111561306a5761306a61300b565b50601f01601f191660200190565b600082601f83011261308957600080fd5b813561309c61309782613051565b613021565b8181528460208386010111156130b157600080fd5b816020850160208301376000918101602001919091529392505050565b6000806000606084860312156130e357600080fd5b833592506020840135915060408401356001600160401b0381111561310757600080fd5b61311386828701613078565b9150509250925092565b80356001600160a01b038116811461313457600080fd5b919050565b60006020828403121561314b57600080fd5b610b3e8261311d565b6001600160a01b0391909116815260200190565b60008060006060848603121561317d57600080fd5b6131868461311d565b92506131946020850161311d565b915060408401356001600160e01b0319811681146131b157600080fd5b809150509250925092565b6000602082840312156131ce57600080fd5b5035919050565b60006101208083526131e98184018d612f7f565b905082810360208401526131fd818c612f7f565b90508281036040840152613211818b612f7f565b905062ffffff808a1660608501528382036080850152613231828a612f7f565b915080881660a085015283820360c085015261324d8288612f7f565b925085151560e085015280851661010085015250509a9950505050505050505050565b60008060006060848603121561328557600080fd5b61328e8461311d565b95602085013595506040909401359392505050565b600080604083850312156132b657600080fd5b6132bf8361311d565b946020939093013593505050565b600080604083850312156132e057600080fd5b823591506132f06020840161311d565b90509250929050565b6000806040838503121561330c57600080fd5b8235915060208301356001600160401b0381111561332957600080fd5b61333585828601613078565b9150509250929050565b600080600080600060a0868803121561335757600080fd5b853594506020860135935060408601356001600160401b038082111561337c57600080fd5b61338889838a01613078565b9450606088013591508082111561339e57600080fd5b6133aa89838a01613078565b935060808801359150808211156133c057600080fd5b506133cd88828901613078565b9150509295509295909350565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561342f57603f1988860301845261341d858351612f7f565b94509285019290850190600101613401565b5092979650505050505050565b60008060006060848603121561345157600080fd5b83359250602084013591506134686040850161311d565b90509250925092565b600181811c9082168061348557607f821691505b602082108103612a3757634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b601f82111561350557600081815260208120601f850160051c810160208610156134e25750805b601f850160051c820191505b81811015613501578281556001016134ee565b5050505b505050565b600019600383901b1c191660019190911b1790565b81516001600160401b038111156135385761353861300b565b61354c816135468454613471565b846134bb565b602080601f83116001811461357b57600084156135695750858301515b613573858261350a565b865550613501565b600085815260208120601f198616915b828110156135aa5788860151825594840194600190910190840161358b565b50858210156135c85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6040815260006135eb6040830185612f7f565b90508260208301529392505050565b60006020828403121561360c57600080fd5b81518015158114610b3e57600080fd5b600061362a61309784613051565b905082815283838301111561363e57600080fd5b610b3e836020830184612f5b565b600082601f83011261365d57600080fd5b610b3e8383516020850161361c565b60008060006060848603121561368157600080fd5b83516001600160401b038082111561369857600080fd5b6136a48783880161364c565b945060208601519150808211156136ba57600080fd5b506136c78682870161364c565b925050604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b62ffffff818116838216019080821115610fa357610fa36136d8565b60006020828403121561371c57600080fd5b5051919050565b60006020828403121561373557600080fd5b81516001600160401b0381111561374b57600080fd5b8201601f8101841361375c57600080fd5b611d258482516020840161361c565b60006020828403121561377d57600080fd5b81516001600160401b0381111561379357600080fd5b611d258482850161364c565b62ffffff828116828216039080821115610fa357610fa36136d8565b808201808211156106f2576106f26136d8565b6060815260006137e16060830186612f7f565b82810360208401526137f38186612f7f565b905082810360408401526138078185612f7f565b9695505050505050565b818103818111156106f2576106f26136d8565b81810361382f575050565b6138398254613471565b6001600160401b038111156138505761385061300b565b61385e816135468454613471565b6000601f82116001811461388c576000831561387a5750848201545b613884848261350a565b8555506138f1565b600085815260209020601f19841690600086815260209020845b838110156138c657828601548255600195860195909101906020016138a6565b50858310156138e45781850154600019600388901b60f8161c191681555b50505060018360011b0184555b5050505050565b60006001820161390a5761390a6136d8565b5060010190565b6a600b5981380380925939f360a81b8152607f60f91b600b820152600c81018490526000602c8201819052606084901b6001600160601b0319166038830152825161396381604c850160208701612f5b565b91909101604c01949350505050565b600060ff821660ff8103613988576139886136d8565b60010192915050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052603160045260246000fdfe5d7871759f44bc77f64c9eb647afdcf4a49d2fbba70fc64411a3bdc750b05274f79e11fc86b9bf37d5dfd4359c053136f7c046da6a08f9cf7ca56d80d5aab839a26469706673582212206bea8239315a7b7d8769e84ac35190ddba4034e098a49387000f6223d3bf88a964736f6c63430008130033",
|
|
1298
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102555760003560e01c80639532f2f4116101425780639532f2f414610463578063a0a82bd314610478578063a1a7a47b1461048b578063ad6b414d1461049e578063b1d24cb2146104b1578063b86b69f1146104c4578063ba228512146104cc578063be3d3ee6146104df578063c0739270146104f2578063c0cd565f14610505578063c42ae81414610518578063c4d66de81461052b578063caaa3bb71461053e578063cc86ba4b14610551578063cea2961a14610564578063dbc71ccb14610577578063dc33f4ae1461058a578063dfa3be531461059d578063f0b99382146105b0578063f146f17f146105c3578063f2fde38b146105d6578063f8ac18be146105e9578063f9c0fae6146105fc578063fb5cd19b1461060f578063fed37e821461061757600080fd5b8062e879031461025a57806307f9f78614610283578063137621861461029857806316a1012d146102ad578063199eb8e0146102c05780631a051d49146102d35780631e9bef46146102e6578063230448b1146102fb57806325ffb3761461031e5780633e76919a1461034657806344346a5f14610359578063447b051a1461036f5780634a78a932146103825780634bd1a387146103955780634f5267ef146103a8578063518cb3df146103bb57806352ccc021146103ce5780635668bc5e146103e15780635710f83d146103f4578063613d57fd1461040757806366d549a11461041a5780636dfa9f561461042d578063715018a61461044057806371b70a71146104485780638da5cb5b1461045b575b600080fd5b61026d610268366004612f39565b61061f565b60405161027a9190612fab565b60405180910390f35b61028b6106f8565b60405161027a9190612fbe565b6102ab6102a63660046130ce565b6107ae565b005b6102ab6102bb3660046130ce565b61085f565b6102ab6102ce366004613139565b610907565b6102ab6102e13660046130ce565b6109c7565b6102ee610a78565b60405161027a9190613154565b61030e610309366004613168565b610a91565b604051901515815260200161027a565b61033161032c3660046131bc565b610b45565b60405161027a999897969594939291906131d5565b6102ee6103543660046131bc565b610d80565b610361610daf565b60405190815260200161027a565b6102ab61037d366004613270565b610dc9565b61026d6103903660046132a3565b610e57565b6102ab6103a33660046132cd565b610faa565b6102ab6103b63660046132a3565b61107c565b61026d6103c9366004612f39565b61115e565b6102ab6103dc3660046131bc565b61135c565b6103616103ef3660046131bc565b611481565b6102ab6104023660046132f9565b6114ae565b6103616104153660046131bc565b611578565b6102ab61042836600461333f565b61159e565b6102ab61043b366004612f39565b6116f4565b6102ab6117f9565b61026d610456366004612f39565b61180d565b6102ee611896565b61046b6118aa565b60405161027a91906133da565b6102ab6104863660046132f9565b611968565b6102ab610499366004612f39565b611a30565b6102ab6104ac3660046131bc565b611b0f565b61026d6104bf3660046131bc565b611c14565b610361611c42565b6103616104da366004612f39565b611c57565b6102ab6104ed3660046132f9565b611d2d565b6102ab6105003660046131bc565b611dac565b6102ab61051336600461343c565b611ea2565b6102ab6105263660046132f9565b611f43565b6102ab610539366004613139565b611fb3565b6102ab61054c3660046130ce565b6120ce565b61026d61055f3660046131bc565b612178565b61030e610572366004613139565b6121a6565b6102ab610585366004613139565b6121bd565b6102ab6105983660046132f9565b61226b565b6102ee6105ab366004612f39565b61230a565b61026d6105be366004612f39565b612365565b6102ab6105d13660046132f9565b6123bd565b6102ab6105e4366004613139565b612480565b6102ab6105f73660046131bc565b6124f9565b6102ab61060a3660046132f9565b61267e565b61046b6126f1565b61036161279f565b6060600061062b6127b4565b600085815260059190910160205260409020600781015490915061065590849062ffffff166127d8565b60008381526002820160205260409020805461067090613471565b80601f016020809104026020016040519081016040528092919081815260200182805461069c90613471565b80156106e95780601f106106be576101008083540402835291602001916106e9565b820191906000526020600020905b8154815290600101906020018083116106cc57829003601f168201915b50505050509150505b92915050565b606060006107046127b4565b905060006107148260070161281c565b90506000816001600160401b038111156107305761073061300b565b604051908082528060200260200182016040528015610759578160200160208202803683370190505b50905060005b828110156107a6576107746007850182612826565b828281518110610786576107866134a5565b6001600160a01b039092166020928302919091019091015260010161075f565b509392505050565b6107be6309bb10c360e11b612832565b6107c781612882565b6107d0836128d1565b60006107da6127b4565b600085815260059190910160205260409020600781015490915061080490849062ffffff166127d8565b6000838152600282016020526040902061081e838261351f565b50837f5f667fb1eaf23e0fee1a9dcc154d842202b184eb9ad83502c00c784808a8d00d83856040516108519291906135d8565b60405180910390a250505050565b61086f6316a1012d60e01b612832565b61087881612882565b6108818361292e565b600061088b6127b4565b60008581526006919091016020526040902060018101549091506108b590849062ffffff166127d8565b6108be8261298d565b60008481526020839052604080822080546001600160a01b0319166001600160a01b039490941693909317909255905185916000805160206139f383398151915291a250505050565b61091662ccf5c760e51b612832565b61092b816109226127b4565b60070190612a3d565b6109905760405162461bcd60e51b815260206004820152602b60248201527f436f726520636f6e747261637420616c72656164792072656d6f766564206f7260448201526a081b9bdd081a5b881cd95d60aa1b60648201526084015b60405180910390fd5b6040516001600160a01b038216907f2453d2f77bae1012d39e2257356d2566625ebe0ffd6094198aa051689dc65ba090600090a250565b6109d7631a051d4960e01b612832565b6109e081612882565b6109e9836128d1565b60006109f36127b4565b6000858152600591909101602052604090206007810154909150610a24908490600160301b900462ffffff166127d8565b610a2d8261298d565b600084815260068301602052604080822080546001600160a01b0319166001600160a01b03949094169390931790925590518591600080516020613a1383398151915291a250505050565b6000610a826127b4565b546001600160a01b0316919050565b600080610a9c611896565b6001600160a01b031614158015610b3b5750610ab66127b4565b546040516217798b60e61b81526001600160a01b03868116600483015285811660248301526001600160e01b031985166044830152909116906305de62c0906064016020604051808303816000875af1158015610b17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3b91906135fa565b90505b9392505050565b606080606060006060600060606000806000610b5f6127b4565b60008c8152600591909101602052604090209050610b7c8b612a52565b8154610b8790612a52565b6007830154600184018054909162ffffff8082169260038801926301000000810483169260058a0192600160301b90920416801515918790610bc890613471565b80601f0160208091040260200160405190810160405280929190818152602001828054610bf490613471565b8015610c415780601f10610c1657610100808354040283529160200191610c41565b820191906000526020600020905b815481529060010190602001808311610c2457829003601f168201915b50505050509650848054610c5490613471565b80601f0160208091040260200160405190810160405280929190818152602001828054610c8090613471565b8015610ccd5780601f10610ca257610100808354040283529160200191610ccd565b820191906000526020600020905b815481529060010190602001808311610cb057829003601f168201915b50505050509450828054610ce090613471565b80601f0160208091040260200160405190810160405280929190818152602001828054610d0c90613471565b8015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509250995099509950995099509950995099509950509193959799909294969850565b600080610d8b6127b4565b9050610da283610d9d8360070161281c565b6127d8565b610b3e6007820184612826565b6000610dc4610dbc6127b4565b60010161281c565b905090565b610dd963223d828d60e11b612832565b610de2816128d1565b610deb83612abd565b80610df46127b4565b6001600160a01b03851660008181526009929092016020908152604080842087855282529283902093909355905183815284927ff2f4de0c34a4899f5cf7a30aced71b0c27f629f80fb61efc06c7a12ecabdb7ba910160405180910390a3505050565b6060610e6283612abd565b6000610e6c6127b4565b6001600160a01b03851660009081526009919091016020908152604080832086845290915290205490508015610ead57610ea581612a52565b9150506106f2565b604051633ae7357560e21b8152600481018490526001600160a01b0385169063eb9cd5d490602401600060405180830381865afa925050508015610f1357506040513d6000823e601f3d908101601f19168201604052610f10919081019061366c565b60015b610f975760405162461bcd60e51b815260206004820152604960248201527f436f6e747261637420646f6573206e6f7420696d706c656d656e742070726f6a60448201527f65637453637269707444657461696c7320616e6420686173206e6f206f7665726064820152683934b2329039b2ba1760b91b608482015260a401610987565b829450505050506106f2565b5092915050565b610fba634bd1a38760e01b612832565b610fc381612b13565b610fcc826128d1565b6000610fd66127b4565b600084815260059190910160209081526040808320600781018054600160301b9081900462ffffff9081168752600684019095529290942080546001600160a01b0319166001600160a01b038816179055925492935061103992041660016136ee565b60078201805462ffffff92909216600160301b0262ffffff60301b199092169190911790556040518390600080516020613a1383398151915290600090a2505050565b61108c634f5267ef60e01b612832565b60006110966127b4565b6001600160a01b038416600090815260098201602090815260408083208684529091529020549091506111095760405162461bcd60e51b815260206004820152601b60248201527a139bc81bdd995c9c9a5919481cd95d08199bdc881c1c9bda9958dd602a1b6044820152606401610987565b6001600160a01b03831660008181526009830160209081526040808320868452909152808220829055518492917f618154ee1a16009759db8e59ff744e79dd094831be73c4b9383f885678c20b7391a3505050565b6060600061116a6127b4565b600085815260059190910160205260409020600781015490915061119b908490600160301b900462ffffff166127d8565b600083815260068201602052604080822054905163cc31a33160e01b81526001600160a01b03909116919073__$55f4e50e6128becd8bf164b272db98df09$__9063cc31a331906111f0908590600401613154565b602060405180830381865af415801561120d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611231919061370a565b90507f554e4b4e4f574e5f56455253494f4e5f535452494e475f5f5f5f5f5f5f5f5f2081036112e057604051632475d70960e01b815273__$55f4e50e6128becd8bf164b272db98df09$__90632475d70990611291908590600401613154565b600060405180830381865af41580156112ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112d69190810190613723565b93505050506106f2565b604051630eacc5e760e31b815273__$55f4e50e6128becd8bf164b272db98df09$__906375662f3890611317908590600401613154565b600060405180830381865af4158015611334573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112d6919081019061376b565b61136c6352ccc02160e01b612832565b611375816128d1565b600061137f6127b4565b6000838152600591909101602052604090206007810154909150600160301b900462ffffff166113f15760405162461bcd60e51b815260206004820152601e60248201527f746865726520617265206e6f207363726970747320746f2072656d6f766500006044820152606401610987565b6007810154600682019060009061141690600190600160301b900462ffffff1661379f565b62ffffff908116825260208201929092526040908101600090812080546001600160a01b031916905560078401805462ffffff60301b198116600160301b918290048616600019019095160293909317909255518391600080516020613a1383398151915291a25050565b600061148b6127b4565b6000928352600501602052506040902060070154600160301b900462ffffff1690565b6114be635710f83d60e01b612832565b6114c781612882565b6114d0826128d1565b60006114da6127b4565b60008481526005919091016020908152604080832060078101546301000000900462ffffff168085526004820190935292209192509061151a848261351f565b506115268160016137bb565b8260070160036101000a81548162ffffff021916908362ffffff160217905550837ffe07adc986f904acd19c0f4f5d0716973976f0450de010a753a52d119ddadbde84836040516108519291906135d8565b60006115826127b4565b600092835260060160205250604090206001015462ffffff1690565b6115ae6366d549a160e01b612832565b6115b78461292e565b6115c48560406001612b67565b61160d5760405162461bcd60e51b815260206004820152601a60248201527901b5d5cdd0818dbdb9d185a5b88195e1858dd1b1e481bdb9948160361b6044820152606401610987565b60006116176127b4565b90506116266001820187612bdb565b61166e5760405162461bcd60e51b8152602060048201526019602482015278446570656e64656e637920616c72656164792065786973747360381b6044820152606401610987565b600086815260058201602052604090208581556001810161168f868261351f565b506003810161169e858261351f565b50600581016116ad848261351f565b5085877f14d15ecf0e955bdd7a921efba642deef4d718696d3fc369454c84817fed0fb778787876040516116e3939291906137ce565b60405180910390a350505050505050565b6117046336fd4fab60e11b612832565b61170d826128d1565b60006117176127b4565b600084815260058201602052604090206007810154919250906301000000900462ffffff1661174684826127d8565b6000611753600183613811565b60008781526005860160209081526040808320848452600490810183528184208a855290880190925290912091925061178c9082613824565b50600081815260048401602052604081206117a691612eeb565b60078301805465ffffff0000001916630100000062ffffff841602179055604051859087907fc02725dfc9639e3399432cdae3db1c062229f4cc41bcc18631517617c020b71c90600090a3505050505050565b611801612be7565b61180b6000612c46565b565b606060006118196127b4565b600085815260069190910160205260409020600181015490915061184390849062ffffff166127d8565b60008381526020829052604080822054905163cc31a33160e01b81526001600160a01b03909116919073__$55f4e50e6128becd8bf164b272db98df09$__9063cc31a331906111f0908590600401613154565b6000610dc46033546001600160a01b031690565b606060006118b66127b4565b905060006118c68260010161281c565b90506000816001600160401b038111156118e2576118e261300b565b60405190808252806020026020018201604052801561191557816020015b60608152602001906001900390816119005790505b50905060005b828110156107a6576119386119336001860183612826565b612a52565b82828151811061194a5761194a6134a5565b60200260200101819052508080611960906138f8565b91505061191b565b61197863a0a82bd360e01b612832565b61198181612882565b61198a8261292e565b60006119946127b4565b60008481526006919091016020526040902090506119b18261298d565b6001828101805462ffffff908116600090815260208690526040902080546001600160a01b0319166001600160a01b039590951694909417909355546119f89216906136ee565b60018201805462ffffff191662ffffff9290921691909117905560405183906000805160206139f383398151915290600090a2505050565b611a4063a1a7a47b60e01b612832565b611a49826128d1565b6000611a536127b4565b600084815260059190910160205260409020600781015490915062ffffff16611a7c83826127d8565b6000611a89600183613811565b60008181526002850160205260408082208783529120919250611aac9082613824565b5060008181526002840160205260408120611ac691612eeb565b60078301805462ffffff191662ffffff8316179055604051849086907f225454b600cf489553fde6e3b7f5e458b1093c035390b678067ea799b3b016cd90600090a35050505050565b611b1f63ad6b414d60e01b612832565b611b288161292e565b6000611b326127b4565b600083815260069190910160205260409020600181015490915062ffffff1680611ba95760405162461bcd60e51b815260206004820152602260248201527f5468657265206973206e6f206c6963656e7365207465787420746f2072656d6f604482015261766560f01b6064820152608401610987565b816000611bb760018461379f565b62ffffff908116825260208201929092526040908101600090812080546001600160a01b031916905560018501805462ffffff19166000198601909416939093179092555184916000805160206139f383398151915291a2505050565b60606000611c206127b4565b9050611c3283610d9d8360010161281c565b610b3e6119336001830185612826565b6000610dc4611c4f6127b4565b60070161281c565b600080611c626127b4565b6000858152600591909101602052604090206007810154909150611c93908490600160301b900462ffffff166127d8565b60008381526006820160205260409081902054905163cc31a33160e01b815273__$55f4e50e6128becd8bf164b272db98df09$__9163cc31a33191611ce4916001600160a01b031690600401613154565b602060405180830381865af4158015611d01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d25919061370a565b949350505050565b611d3d635f1e9f7360e11b612832565b611d46826128d1565b80611d4f6127b4565b60008481526005919091016020526040902060010190611d6f908261351f565b50817fc9890a31ec780bb5a8a017d683d3913f97260548d71c2cee78194ed2833f023582604051611da09190612fab565b60405180910390a25050565b611dbc630c07392760e41b612832565b80611e155760405162461bcd60e51b815260206004820152602360248201527f4c6963656e736520747970652063616e6e6f7420626520656d70747920737472604482015262696e6760e81b6064820152608401610987565b611e2a81611e216127b4565b60030190612bdb565b611e745760405162461bcd60e51b815260206004820152601b60248201527a4c6963656e7365207479706520616c72656164792065786973747360281b6044820152606401610987565b60405181907fad5dcce4588345db351371d105540f3fb69966f418d923539f19d5f44a1cfc4b90600090a250565b611eb263c0cd565f60e01b612832565b611ebb81612b13565b611ec4836128d1565b6000611ece6127b4565b6000858152600591909101602052604090206007810154909150611eff908490600160301b900462ffffff166127d8565b600083815260068201602052604080822080546001600160a01b0319166001600160a01b038616179055518591600080516020613a1383398151915291a250505050565b611f5363310aba0560e21b612832565b611f5c826128d1565b80611f656127b4565b60008481526005918201602052604090200190611f82908261351f565b50817f94747dffac14b8b9a15e699c998cc8f42ad81f21ae95e155c8a1c49403117b8b82604051611da09190612fab565b600054610100900460ff1615808015611fd35750600054600160ff909116105b80611fed5750303b158015611fed575060005460ff166001145b6120505760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610987565b6000805460ff191660011790558015612073576000805461ff0019166101001790555b61207b612c79565b61208482612c46565b80156120ca576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6120de63caaa3bb760e01b612832565b6120e781612882565b6120f0836128d1565b60006120fa6127b4565b600085815260059190910160205260409020600781015490915061212b9084906301000000900462ffffff166127d8565b60008381526004820160205260409020612145838261351f565b50837ffe07adc986f904acd19c0f4f5d0716973976f0450de010a753a52d119ddadbde83856040516108519291906135d8565b606060006121846127b4565b905061219683610d9d8360030161281c565b610b3e6119336003830185612826565b60006106f2826121b46127b4565b60070190612ca8565b6121cd63dbc71ccb60e01b612832565b6121d681612b13565b6121eb816121e26127b4565b60070190612cbd565b6122345760405162461bcd60e51b815260206004820152601a60248201527910dbdb9d1c9858dd08185b1c9958591e481cdd5c1c1bdc9d195960321b6044820152606401610987565b6040516001600160a01b038216907f59e1b889b92ad05213b7934a67c5d824348c868455d1c741a2cfe16e46d832dc90600090a250565b61227b636e19fa5760e11b612832565b61228481612882565b61228d826128d1565b60006122976127b4565b60008481526005919091016020526040902090506122b48261298d565b600782018054600160301b9081900462ffffff9081166000908152600686016020526040902080546001600160a01b0319166001600160a01b0395909516949094179093559054611039929190041660016136ee565b6000806123156127b4565b6000858152600591909101602052604090206007810154909150612346908490600160301b900462ffffff166127d8565b60009283526006016020525060409020546001600160a01b0316919050565b606060006123716127b4565b60008581526005919091016020526040902060078101549091506123a29084906301000000900462ffffff166127d8565b60008381526004820160205260409020805461067090613471565b6123cd63f146f17f60e01b612832565b6123d681612882565b6123df826128d1565b60006123e96127b4565b600084815260059190910160209081526040808320600781015462ffffff1680855260028201909352922091925090612422848261351f565b5061242e8160016137bb565b8260070160006101000a81548162ffffff021916908362ffffff160217905550837f5f667fb1eaf23e0fee1a9dcc154d842202b184eb9ad83502c00c784808a8d00d84836040516108519291906135d8565b612488612be7565b6001600160a01b0381166124ed5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610987565b6124f681612c46565b50565b612509637c560c5f60e11b612832565b612512816128d1565b600061251c6127b4565b6000838152600582016020526040902060078101549192509062ffffff16158015612555575060078101546301000000900462ffffff16155b801561256f57506007810154600160301b900462ffffff16155b6125f15760405162461bcd60e51b815260206004820152604760248201527f43616e6e6f742072656d6f766520646570656e64656e6379207769746820616460448201527f646974696f6e616c2043444e732c207265706f7369746f726965732c206f72206064820152667363726970747360c81b608482015260a401610987565b6125fe6001830184612cd2565b5060008381526005830160205260408120818155906126206001830182612eeb565b61262e600383016000612eeb565b61263c600583016000612eeb565b5060070180546001600160481b031916905560405183907f60e2aa021c4f5303dd65e2173f0180636e4d42eaefc6187278e92bee9d06aa7290600090a2505050565b61268e637ce07d7360e11b612832565b612697826128d1565b806126a06127b4565b600084815260059190910160205260409020600301906126c0908261351f565b50817f774918414e4887efe5349a305fe253ee8b1e3fe0c2117012f0c215645693cbfd82604051611da09190612fab565b606060006126fd6127b4565b9050600061270d8260030161281c565b90506000816001600160401b038111156127295761272961300b565b60405190808252806020026020018201604052801561275c57816020015b60608152602001906001900390816127475790505b50905060005b828110156107a65761277a6119336003860183612826565b82828151811061278c5761278c6134a5565b6020908102919091010152600101612762565b6000610dc46127ac6127b4565b60030161281c565b7fb1832496845cc2c2d1bd0879f9ba0b1ef7ffcfdc79a541ee494477d8e10b9a3190565b8082106120ca5760405162461bcd60e51b8152602060048201526012602482015271496e646578206f7574206f662072616e676560701b6044820152606401610987565b60006106f2825490565b6000610b3e8383612cde565b61283d333083610a91565b6124f65760405162461bcd60e51b815260206004820152601660248201527513db9b1e4810591b5a5b881050d308185b1b1bddd95960521b6044820152606401610987565b80516000036124f65760405162461bcd60e51b815260206004820152601b60248201527a4d75737420696e707574206e6f6e2d656d70747920737472696e6760281b6044820152606401610987565b6128e6816128dd6127b4565b60010190612d08565b6124f65760405162461bcd60e51b815260206004820152601960248201527811195c195b99195b98de48191bd95cc81b9bdd08195e1a5cdd603a1b6044820152606401610987565b6129438161293a6127b4565b60030190612d08565b6124f65760405162461bcd60e51b815260206004820152601b60248201527a131a58d95b9cd9481d1e5c1948191bd95cc81b9bdd08195e1a5cdd602a1b6044820152606401610987565b6000807f42797465636f646553746f726167655f56312e302e305f5f5f5f5f5f5f5f5f2030846040516020016129c593929190613911565b60405160208183030381529060405290508051602082016000f091506001600160a01b038216612a375760405162461bcd60e51b815260206004820152601e60248201527f436f6e7472616374417353746f726167653a205772697465204572726f7200006044820152606401610987565b50919050565b6000610b3e836001600160a01b038416612d14565b606060005b828160ff1660208110612a6c57612a6c6134a5565b1a60f81b6001600160f81b03191615801590612a8b575060208160ff16105b15612aa25780612a9a81613972565b915050612a57565b60405191506040820160405280825282602083015250919050565b612ac9816121b46127b4565b6124f65760405162461bcd60e51b815260206004820152601b60248201527a10dbdc994818dbdb9d1c9858dd081b9bdd081cdd5c1c1bdc9d1959602a1b6044820152606401610987565b6001600160a01b0381166124f65760405162461bcd60e51b815260206004820152601b60248201527a4d75737420696e707574206e6f6e2d7a65726f206164647265737360281b6044820152606401610987565b60008060005b60208160ff161015612bc7576000868260ff1660208110612b9057612b906134a5565b1a90508015801590612ba5575060808160ff16105b15612bbe578560ff168160ff1603612bbe578260010192505b50600101612b6d565b8360ff168260ff1614925050509392505050565b6000610b3e8383612e07565b33612bf0611896565b6001600160a01b03161461180b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610987565b612c4f81612e51565b80612c586127b4565b80546001600160a01b0319166001600160a01b039290921691909117905550565b600054610100900460ff16612ca05760405162461bcd60e51b815260040161098790613991565b61180b612ea3565b6000610b3e836001600160a01b038416612ed3565b6000610b3e836001600160a01b038416612e07565b6000610b3e8383612d14565b6000826000018281548110612cf557612cf56134a5565b9060005260206000200154905092915050565b6000610b3e8383612ed3565b60008181526001830160205260408120548015612dfd576000612d38600183613811565b8554909150600090612d4c90600190613811565b9050818114612db1576000866000018281548110612d6c57612d6c6134a5565b9060005260206000200154905080876000018481548110612d8f57612d8f6134a5565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612dc257612dc26139dc565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506106f2565b60009150506106f2565b6000612e138383612ed3565b612e49575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556106f2565b5060006106f2565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16612eca5760405162461bcd60e51b815260040161098790613991565b61180b33612c46565b60009081526001919091016020526040902054151590565b508054612ef790613471565b6000825580601f10612f07575050565b601f0160209004906000526020600020908101906124f691905b80821115612f355760008155600101612f21565b5090565b60008060408385031215612f4c57600080fd5b50508035926020909101359150565b60005b83811015612f76578181015183820152602001612f5e565b50506000910152565b60008151808452612f97816020860160208601612f5b565b601f01601f19169290920160200192915050565b602081526000610b3e6020830184612f7f565b6020808252825182820181905260009190848201906040850190845b81811015612fff5783516001600160a01b031683529284019291840191600101612fda565b50909695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156130495761304961300b565b604052919050565b60006001600160401b0382111561306a5761306a61300b565b50601f01601f191660200190565b600082601f83011261308957600080fd5b813561309c61309782613051565b613021565b8181528460208386010111156130b157600080fd5b816020850160208301376000918101602001919091529392505050565b6000806000606084860312156130e357600080fd5b833592506020840135915060408401356001600160401b0381111561310757600080fd5b61311386828701613078565b9150509250925092565b80356001600160a01b038116811461313457600080fd5b919050565b60006020828403121561314b57600080fd5b610b3e8261311d565b6001600160a01b0391909116815260200190565b60008060006060848603121561317d57600080fd5b6131868461311d565b92506131946020850161311d565b915060408401356001600160e01b0319811681146131b157600080fd5b809150509250925092565b6000602082840312156131ce57600080fd5b5035919050565b60006101208083526131e98184018d612f7f565b905082810360208401526131fd818c612f7f565b90508281036040840152613211818b612f7f565b905062ffffff808a1660608501528382036080850152613231828a612f7f565b915080881660a085015283820360c085015261324d8288612f7f565b925085151560e085015280851661010085015250509a9950505050505050505050565b60008060006060848603121561328557600080fd5b61328e8461311d565b95602085013595506040909401359392505050565b600080604083850312156132b657600080fd5b6132bf8361311d565b946020939093013593505050565b600080604083850312156132e057600080fd5b823591506132f06020840161311d565b90509250929050565b6000806040838503121561330c57600080fd5b8235915060208301356001600160401b0381111561332957600080fd5b61333585828601613078565b9150509250929050565b600080600080600060a0868803121561335757600080fd5b853594506020860135935060408601356001600160401b038082111561337c57600080fd5b61338889838a01613078565b9450606088013591508082111561339e57600080fd5b6133aa89838a01613078565b935060808801359150808211156133c057600080fd5b506133cd88828901613078565b9150509295509295909350565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561342f57603f1988860301845261341d858351612f7f565b94509285019290850190600101613401565b5092979650505050505050565b60008060006060848603121561345157600080fd5b83359250602084013591506134686040850161311d565b90509250925092565b600181811c9082168061348557607f821691505b602082108103612a3757634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b601f82111561350557600081815260208120601f850160051c810160208610156134e25750805b601f850160051c820191505b81811015613501578281556001016134ee565b5050505b505050565b600019600383901b1c191660019190911b1790565b81516001600160401b038111156135385761353861300b565b61354c816135468454613471565b846134bb565b602080601f83116001811461357b57600084156135695750858301515b613573858261350a565b865550613501565b600085815260208120601f198616915b828110156135aa5788860151825594840194600190910190840161358b565b50858210156135c85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6040815260006135eb6040830185612f7f565b90508260208301529392505050565b60006020828403121561360c57600080fd5b81518015158114610b3e57600080fd5b600061362a61309784613051565b905082815283838301111561363e57600080fd5b610b3e836020830184612f5b565b600082601f83011261365d57600080fd5b610b3e8383516020850161361c565b60008060006060848603121561368157600080fd5b83516001600160401b038082111561369857600080fd5b6136a48783880161364c565b945060208601519150808211156136ba57600080fd5b506136c78682870161364c565b925050604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b62ffffff818116838216019080821115610fa357610fa36136d8565b60006020828403121561371c57600080fd5b5051919050565b60006020828403121561373557600080fd5b81516001600160401b0381111561374b57600080fd5b8201601f8101841361375c57600080fd5b611d258482516020840161361c565b60006020828403121561377d57600080fd5b81516001600160401b0381111561379357600080fd5b611d258482850161364c565b62ffffff828116828216039080821115610fa357610fa36136d8565b808201808211156106f2576106f26136d8565b6060815260006137e16060830186612f7f565b82810360208401526137f38186612f7f565b905082810360408401526138078185612f7f565b9695505050505050565b818103818111156106f2576106f26136d8565b81810361382f575050565b6138398254613471565b6001600160401b038111156138505761385061300b565b61385e816135468454613471565b6000601f82116001811461388c576000831561387a5750848201545b613884848261350a565b8555506138f1565b600085815260209020601f19841690600086815260209020845b838110156138c657828601548255600195860195909101906020016138a6565b50858310156138e45781850154600019600388901b60f8161c191681555b50505060018360011b0184555b5050505050565b60006001820161390a5761390a6136d8565b5060010190565b6a600b5981380380925939f360a81b8152607f60f91b600b820152600c81018490526000602c8201819052606084901b6001600160601b0319166038830152825161396381604c850160208701612f5b565b91909101604c01949350505050565b600060ff821660ff8103613988576139886136d8565b60010192915050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052603160045260246000fdfe5d7871759f44bc77f64c9eb647afdcf4a49d2fbba70fc64411a3bdc750b05274f79e11fc86b9bf37d5dfd4359c053136f7c046da6a08f9cf7ca56d80d5aab839a26469706673582212206bea8239315a7b7d8769e84ac35190ddba4034e098a49387000f6223d3bf88a964736f6c63430008130033",
|
|
1299
|
-
"linkReferences": {
|
|
1300
|
-
"contracts/libs/v0.8.x/BytecodeStorageV1.sol": {
|
|
1301
|
-
"BytecodeStorageReader": [
|
|
1302
|
-
{
|
|
1303
|
-
"length": 20,
|
|
1304
|
-
"start": 4584
|
|
1305
|
-
},
|
|
1306
|
-
{
|
|
1307
|
-
"length": 20,
|
|
1308
|
-
"start": 4745
|
|
1309
|
-
},
|
|
1310
|
-
{
|
|
1311
|
-
"length": 20,
|
|
1312
|
-
"start": 4879
|
|
1313
|
-
},
|
|
1314
|
-
{
|
|
1315
|
-
"length": 20,
|
|
1316
|
-
"start": 6286
|
|
1317
|
-
},
|
|
1318
|
-
{
|
|
1319
|
-
"length": 20,
|
|
1320
|
-
"start": 7380
|
|
1321
|
-
}
|
|
1322
|
-
]
|
|
1323
|
-
}
|
|
1324
|
-
},
|
|
1325
|
-
"deployedLinkReferences": {
|
|
1326
|
-
"contracts/libs/v0.8.x/BytecodeStorageV1.sol": {
|
|
1327
|
-
"BytecodeStorageReader": [
|
|
1328
|
-
{
|
|
1329
|
-
"length": 20,
|
|
1330
|
-
"start": 4552
|
|
1331
|
-
},
|
|
1332
|
-
{
|
|
1333
|
-
"length": 20,
|
|
1334
|
-
"start": 4713
|
|
1335
|
-
},
|
|
1336
|
-
{
|
|
1337
|
-
"length": 20,
|
|
1338
|
-
"start": 4847
|
|
1339
|
-
},
|
|
1340
|
-
{
|
|
1341
|
-
"length": 20,
|
|
1342
|
-
"start": 6254
|
|
1343
|
-
},
|
|
1451
|
+
},
|
|
1452
|
+
{
|
|
1453
|
+
"inputs": [
|
|
1344
1454
|
{
|
|
1345
|
-
"
|
|
1346
|
-
"
|
|
1455
|
+
"internalType": "address",
|
|
1456
|
+
"name": "newReader",
|
|
1457
|
+
"type": "address"
|
|
1347
1458
|
}
|
|
1348
|
-
]
|
|
1459
|
+
],
|
|
1460
|
+
"name": "updateUniversalBytecodeStorageReader",
|
|
1461
|
+
"outputs": [],
|
|
1462
|
+
"stateMutability": "nonpayable",
|
|
1463
|
+
"type": "function"
|
|
1349
1464
|
}
|
|
1350
|
-
|
|
1465
|
+
],
|
|
1466
|
+
"bytecode": "0x608060405234801561001057600080fd5b506141df806100206000396000f3fe608060405234801561001057600080fd5b50600436106102ac5760003560e01c80638da5cb5b11610173578063c4d66de8116100d4578063c4d66de8146105d6578063caaa3bb7146105e9578063cc86ba4b146105fc578063cea2961a1461060f578063cfb5192814610622578063dc33f4ae14610635578063dfa3be5314610648578063f0b993821461065b578063f146f17f1461066e578063f2fde38b14610681578063f8ac18be14610694578063f9c0fae6146106a7578063fb5cd19b146106ba578063fed37e82146106c257600080fd5b80638da5cb5b146104e057806392b794db146104e85780639532f2f4146104fb5780639897993714610510578063a0a82bd314610523578063a1a7a47b14610536578063ad6b414d14610549578063b1d24cb21461055c578063b86b69f11461056f578063ba22851214610577578063be3d3ee61461058a578063c07392701461059d578063c0cd565f146105b0578063c42ae814146105c357600080fd5b80634c66823c1161021d5780634c66823c146103ec5780634f5267ef146103f4578063518cb3df1461040757806352ccc0211461041a5780635668bc5e1461042d5780635710f83d14610440578063613d57fd1461045357806366d549a114610466578063675abe24146104795780636dfa9f561461048c578063715018a61461049f57806371b70a71146104a757806381e7837c146104ba5780638b6ad1ec146104cd57600080fd5b8062e87903146102b157806307f9f786146102da57806313762186146102ef57806316a1012d146103045780631a051d49146103175780631e9bef461461032a578063230448b11461033f57806325ffb376146103625780633e76919a1461038a57806344346a5f1461039d578063447b051a146103b35780634a78a932146103c65780634bd1a387146103d9575b600080fd5b6102c46102bf36600461357b565b6106ca565b6040516102d191906135ed565b60405180910390f35b6102e26107a3565b6040516102d19190613600565b6103026102fd366004613710565b610974565b005b610302610312366004613710565b610a25565b610302610325366004613710565b610acd565b610332610b7e565b6040516102d1919061375f565b61035261034d366004613788565b610b97565b60405190151581526020016102d1565b6103756103703660046137e0565b610c4b565b6040516102d1999897969594939291906137f9565b6103326103983660046137e0565b610e86565b6103a5610ff0565b6040519081526020016102d1565b6103026103c1366004613894565b61100a565b6102c46103d43660046138c9565b611098565b6103026103e73660046138f5565b6111eb565b6103326112bd565b6103026104023660046138c9565b6112d9565b6102c461041536600461357b565b6113bb565b6103026104283660046137e0565b611424565b6103a561043b3660046137e0565b611549565b61030261044e366004613925565b611576565b6103a56104613660046137e0565b611640565b61030261047436600461396b565b611666565b610302610487366004613a06565b6117bc565b61030261049a36600461357b565b61186a565b61030261196f565b6102c46104b536600461357b565b611983565b6103026104c8366004613a06565b6119da565b6103026104db366004613a06565b611a96565b610332611b05565b6103756104f6366004613a23565b611b19565b610503611b5d565b6040516102d19190613a57565b61030261051e366004613a06565b611c23565b610302610531366004613925565b611c92565b61030261054436600461357b565b611d5a565b6103026105573660046137e0565b611e39565b6102c461056a3660046137e0565b611f3e565b6103a5611f71565b6103a561058536600461357b565b612016565b610302610598366004613925565b6120db565b6103026105ab3660046137e0565b61215a565b6103026105be366004613ab9565b612250565b6103026105d1366004613925565b6122f1565b6103026105e4366004613a06565b612361565b6103026105f7366004613710565b61247c565b6102c461060a3660046137e0565b612526565b61035261061d366004613a06565b612554565b6103a5610630366004613a23565b6125eb565b610302610643366004613925565b6125ff565b61033261065636600461357b565b61269e565b6102c461066936600461357b565b6126f9565b61030261067c366004613925565b612751565b61030261068f366004613a06565b612814565b6103026106a23660046137e0565b61288d565b6103026106b5366004613925565b612a12565b610503612a85565b6103a5612b33565b606060006106d6612b48565b600085815260059190910160205260409020600781015490915061070090849062ffffff16612b6c565b60008381526002820160205260409020805461071b90613ae7565b80601f016020809104026020016040519081016040528092919081815260200182805461074790613ae7565b80156107945780601f1061076957610100808354040283529160200191610794565b820191906000526020600020905b81548152906001019060200180831161077757829003601f168201915b50505050509150505b92915050565b606060006107af612b48565b600a0160009054906101000a90046001600160a01b03166001600160a01b0316631676ddc36040518163ffffffff1660e01b8152600401600060405180830381865afa158015610803573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261082b9190810190613b1b565b8051909150600061084561083d612b48565b600b01612b8b565b90506000815184516108579190613be2565b6001600160401b0381111561086e5761086e61364d565b604051908082528060200260200182016040528015610897578160200160208202803683370190505b50805190915060005b818110156109695784811015610901578581815181106108c2576108c2613bf5565b60200260200101518382815181106108dc576108dc613bf5565b60200260200101906001600160a01b031690816001600160a01b031681525050610957565b8361090c8683613c0b565b8151811061091c5761091c613bf5565b602002602001015183828151811061093657610936613bf5565b60200260200101906001600160a01b031690816001600160a01b0316815250505b8061096181613c1e565b9150506108a0565b509095945050505050565b6109846309bb10c360e11b612b98565b61098d81612be8565b61099683612c37565b60006109a0612b48565b60008581526005919091016020526040902060078101549091506109ca90849062ffffff16612b6c565b600083815260028201602052604090206109e48382613c9b565b50837f5f667fb1eaf23e0fee1a9dcc154d842202b184eb9ad83502c00c784808a8d00d8385604051610a17929190613d54565b60405180910390a250505050565b610a356316a1012d60e01b612b98565b610a3e81612be8565b610a4783612c94565b6000610a51612b48565b6000858152600691909101602052604090206001810154909150610a7b90849062ffffff16612b6c565b610a8482612cf3565b60008481526020839052604080822080546001600160a01b0319166001600160a01b0394909416939093179092559051859160008051602061416a83398151915291a250505050565b610add631a051d4960e01b612b98565b610ae681612be8565b610aef83612c37565b6000610af9612b48565b6000858152600591909101602052604090206007810154909150610b2a908490600160301b900462ffffff16612b6c565b610b3382612cf3565b600084815260068301602052604080822080546001600160a01b0319166001600160a01b0394909416939093179092559051859160008051602061418a83398151915291a250505050565b6000610b88612b48565b546001600160a01b0316919050565b600080610ba2611b05565b6001600160a01b031614158015610c415750610bbc612b48565b546040516217798b60e61b81526001600160a01b03868116600483015285811660248301526001600160e01b031985166044830152909116906305de62c0906064016020604051808303816000875af1158015610c1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c419190613d76565b90505b9392505050565b606080606060006060600060606000806000610c65612b48565b60008c8152600591909101602052604090209050610c828b612da3565b8154610c8d90612da3565b6007830154600184018054909162ffffff8082169260038801926301000000810483169260058a0192600160301b90920416801515918790610cce90613ae7565b80601f0160208091040260200160405190810160405280929190818152602001828054610cfa90613ae7565b8015610d475780601f10610d1c57610100808354040283529160200191610d47565b820191906000526020600020905b815481529060010190602001808311610d2a57829003601f168201915b50505050509650848054610d5a90613ae7565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8690613ae7565b8015610dd35780601f10610da857610100808354040283529160200191610dd3565b820191906000526020600020905b815481529060010190602001808311610db657829003601f168201915b50505050509450828054610de690613ae7565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1290613ae7565b8015610e5f5780601f10610e3457610100808354040283529160200191610e5f565b820191906000526020600020905b815481529060010190602001808311610e4257829003601f168201915b50505050509250995099509950995099509950995099509950509193959799909294969850565b600080610e91612b48565b600a0160009054906101000a90046001600160a01b03166001600160a01b0316637ac4f3296040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ee5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f099190613d98565b905080831015610f8957610f1b612b48565b600a0154604051631ef6bdbf60e21b8152600481018590526001600160a01b0390911690637bdaf6fc90602401602060405180830381865afa158015610f65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c449190613db1565b6000610f9e610f96612b48565b600b01612e0e565b9050610faa8183613be2565b8410610fd15760405162461bcd60e51b8152600401610fc890613dce565b60405180910390fd5b610fe8828503610fdf612b48565b600b0190612e18565b949350505050565b6000611005610ffd612b48565b600101612e0e565b905090565b61101a63223d828d60e11b612b98565b61102381612c37565b61102c83612e24565b80611035612b48565b6001600160a01b03851660008181526009929092016020908152604080842087855282529283902093909355905183815284927ff2f4de0c34a4899f5cf7a30aced71b0c27f629f80fb61efc06c7a12ecabdb7ba910160405180910390a3505050565b60606110a383612e24565b60006110ad612b48565b6001600160a01b038516600090815260099190910160209081526040808320868452909152902054905080156110ee576110e681612da3565b91505061079d565b604051633ae7357560e21b8152600481018490526001600160a01b0385169063eb9cd5d490602401600060405180830381865afa92505050801561115457506040513d6000823e601f3d908101601f191682016040526111519190810190613e4a565b60015b6111d85760405162461bcd60e51b815260206004820152604960248201527f436f6e747261637420646f6573206e6f7420696d706c656d656e742070726f6a60448201527f65637453637269707444657461696c7320616e6420686173206e6f206f7665726064820152683934b2329039b2ba1760b91b608482015260a401610fc8565b8294505050505061079d565b5092915050565b6111fb634bd1a38760e01b612b98565b61120481612e77565b61120d82612c37565b6000611217612b48565b600084815260059190910160209081526040808320600781018054600160301b9081900462ffffff9081168752600684019095529290942080546001600160a01b0319166001600160a01b038816179055925492935061127a9204166001613eb6565b60078201805462ffffff92909216600160301b0262ffffff60301b19909216919091179055604051839060008051602061418a83398151915290600090a2505050565b60006112c7612b48565b600a01546001600160a01b0316919050565b6112e9634f5267ef60e01b612b98565b60006112f3612b48565b6001600160a01b038416600090815260098201602090815260408083208684529091529020549091506113665760405162461bcd60e51b815260206004820152601b60248201527a139bc81bdd995c9c9a5919481cd95d08199bdc881c1c9bda9958dd602a1b6044820152606401610fc8565b6001600160a01b03831660008181526009830160209081526040808320868452909152808220829055518492917f618154ee1a16009759db8e59ff744e79dd094831be73c4b9383f885678c20b7391a3505050565b606060006113c7612b48565b60008581526005919091016020526040902060078101549091506113f8908490600160301b900462ffffff16612b6c565b60008381526006820160205260409020546001600160a01b031661141b81612ecb565b95945050505050565b6114346352ccc02160e01b612b98565b61143d81612c37565b6000611447612b48565b6000838152600591909101602052604090206007810154909150600160301b900462ffffff166114b95760405162461bcd60e51b815260206004820152601e60248201527f746865726520617265206e6f207363726970747320746f2072656d6f766500006044820152606401610fc8565b600781015460068201906000906114de90600190600160301b900462ffffff16613ed2565b62ffffff908116825260208201929092526040908101600090812080546001600160a01b031916905560078401805462ffffff60301b198116600160301b91829004861660001901909516029390931790925551839160008051602061418a83398151915291a25050565b6000611553612b48565b6000928352600501602052506040902060070154600160301b900462ffffff1690565b611586635710f83d60e01b612b98565b61158f81612be8565b61159882612c37565b60006115a2612b48565b60008481526005919091016020908152604080832060078101546301000000900462ffffff16808552600482019093529220919250906115e28482613c9b565b506115ee816001613be2565b8260070160036101000a81548162ffffff021916908362ffffff160217905550837ffe07adc986f904acd19c0f4f5d0716973976f0450de010a753a52d119ddadbde8483604051610a17929190613d54565b600061164a612b48565b600092835260060160205250604090206001015462ffffff1690565b6116766366d549a160e01b612b98565b61167f84612c94565b61168c8560406001613053565b6116d55760405162461bcd60e51b815260206004820152601a60248201527901b5d5cdd0818dbdb9d185a5b88195e1858dd1b1e481bdb9948160361b6044820152606401610fc8565b60006116df612b48565b90506116ee60018201876130c7565b6117365760405162461bcd60e51b8152602060048201526019602482015278446570656e64656e637920616c72656164792065786973747360381b6044820152606401610fc8565b60008681526005820160205260409020858155600181016117578682613c9b565b50600381016117668582613c9b565b50600581016117758482613c9b565b5085877f14d15ecf0e955bdd7a921efba642deef4d718696d3fc369454c84817fed0fb778787876040516117ab93929190613eee565b60405180910390a350505050505050565b6117cc6319d6af8960e21b612b98565b6117d581612e77565b6117ea816117e1612b48565b600b01906130d3565b6118335760405162461bcd60e51b815260206004820152601a60248201527910dbdb9d1c9858dd08185b1c9958591e481cdd5c1c1bdc9d195960321b6044820152606401610fc8565b6040516001600160a01b038216907f85796181e67d093fd8fc344cdf114629c14c1396c47bfd9cda9392285e74d43f90600090a250565b61187a6336fd4fab60e11b612b98565b61188382612c37565b600061188d612b48565b600084815260058201602052604090206007810154919250906301000000900462ffffff166118bc8482612b6c565b60006118c9600183613c0b565b60008781526005860160209081526040808320848452600490810183528184208a85529088019092529091209192506119029082613f31565b506000818152600484016020526040812061191c9161352d565b60078301805465ffffff0000001916630100000062ffffff841602179055604051859087907fc02725dfc9639e3399432cdae3db1c062229f4cc41bcc18631517617c020b71c90600090a3505050505050565b6119776130e8565b6119816000613147565b565b6060600061198f612b48565b60008581526006919091016020526040902060018101549091506119b990849062ffffff16612b6c565b6000838152602082905260409020546001600160a01b031661141b81612ecb565b6119ea632079e0df60e21b612b98565b6119ff816119f6612b48565b600b019061317a565b611a5f5760405162461bcd60e51b815260206004820152602b60248201527f436f726520636f6e747261637420616c72656164792072656d6f766564206f7260448201526a081b9bdd081a5b881cd95d60aa1b6064820152608401610fc8565b6040516001600160a01b038216907f24f057e6bd463ac72bb963a1e55a41494d252695f97a7671c2b7018345eb31f790600090a250565b611aa66322dab47b60e21b612b98565b611aaf81612e77565b80611ab8612b48565b600a0180546001600160a01b0319166001600160a01b03928316179055604051908216907f38429341ba977e6c97809dd9fed1f58cf5c409bfe8132475b3f73bda02dd84f690600090a250565b60006110056033546001600160a01b031690565b60608060606000606060006060600080611b328a61318f565b611b3e6103708b6131d3565b9850985098509850985098509850985098509193959799909294969850565b60606000611b69612b48565b90506000611b7982600101612e0e565b90506000816001600160401b03811115611b9557611b9561364d565b604051908082528060200260200182016040528015611bc857816020015b6060815260200190600190039081611bb35790505b50905060005b82811015611c1b57611beb611be66001860183612e18565b612da3565b828281518110611bfd57611bfd613bf5565b60200260200101819052508080611c1390613c1e565b915050611bce565b509392505050565b611c33639897993760e01b612b98565b611c3c81612e77565b80611c45612b48565b600d0180546001600160a01b0319166001600160a01b03928316179055604051908216907f0b9c67948019a508c85a8b9abbe9b2ff80ab26c068bc4edb68425299f360be6e90600090a250565b611ca263a0a82bd360e01b612b98565b611cab81612be8565b611cb482612c94565b6000611cbe612b48565b6000848152600691909101602052604090209050611cdb82612cf3565b6001828101805462ffffff908116600090815260208690526040902080546001600160a01b0319166001600160a01b03959095169490941790935554611d22921690613eb6565b60018201805462ffffff191662ffffff92909216919091179055604051839060008051602061416a83398151915290600090a2505050565b611d6a63a1a7a47b60e01b612b98565b611d7382612c37565b6000611d7d612b48565b600084815260059190910160205260409020600781015490915062ffffff16611da68382612b6c565b6000611db3600183613c0b565b60008181526002850160205260408082208783529120919250611dd69082613f31565b5060008181526002840160205260408120611df09161352d565b60078301805462ffffff191662ffffff8316179055604051849086907f225454b600cf489553fde6e3b7f5e458b1093c035390b678067ea799b3b016cd90600090a35050505050565b611e4963ad6b414d60e01b612b98565b611e5281612c94565b6000611e5c612b48565b600083815260069190910160205260409020600181015490915062ffffff1680611ed35760405162461bcd60e51b815260206004820152602260248201527f5468657265206973206e6f206c6963656e7365207465787420746f2072656d6f604482015261766560f01b6064820152608401610fc8565b816000611ee1600184613ed2565b62ffffff908116825260208201929092526040908101600090812080546001600160a01b031916905560018501805462ffffff191660001986019094169390931790925551849160008051602061416a83398151915291a2505050565b60606000611f4a612b48565b9050611f6183611f5c83600101612e0e565b612b6c565b610c44611be66001830185612e18565b600080611f7c612b48565b600a0160009054906101000a90046001600160a01b03166001600160a01b0316637ac4f3296040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fd0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ff49190613d98565b90506000612003610f96612b48565b905061200f8183613be2565b9250505090565b600080612021612b48565b6000858152600591909101602052604090206007810154909150612052908490600160301b900462ffffff16612b6c565b61205a6131f2565b60008481526006830160205260409081902054905163cc31a33160e01b81526001600160a01b039283169263cc31a3319261209a9291169060040161375f565b602060405180830381865afa1580156120b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe89190613d98565b6120eb635f1e9f7360e11b612b98565b6120f482612c37565b806120fd612b48565b6000848152600591909101602052604090206001019061211d9082613c9b565b50817fc9890a31ec780bb5a8a017d683d3913f97260548d71c2cee78194ed2833f02358260405161214e91906135ed565b60405180910390a25050565b61216a630c07392760e41b612b98565b806121c35760405162461bcd60e51b815260206004820152602360248201527f4c6963656e736520747970652063616e6e6f7420626520656d70747920737472604482015262696e6760e81b6064820152608401610fc8565b6121d8816121cf612b48565b600301906130c7565b6122225760405162461bcd60e51b815260206004820152601b60248201527a4c6963656e7365207479706520616c72656164792065786973747360281b6044820152606401610fc8565b60405181907fad5dcce4588345db351371d105540f3fb69966f418d923539f19d5f44a1cfc4b90600090a250565b61226063c0cd565f60e01b612b98565b61226981612e77565b61227283612c37565b600061227c612b48565b60008581526005919091016020526040902060078101549091506122ad908490600160301b900462ffffff16612b6c565b600083815260068201602052604080822080546001600160a01b0319166001600160a01b03861617905551859160008051602061418a83398151915291a250505050565b61230163310aba0560e21b612b98565b61230a82612c37565b80612313612b48565b600084815260059182016020526040902001906123309082613c9b565b50817f94747dffac14b8b9a15e699c998cc8f42ad81f21ae95e155c8a1c49403117b8b8260405161214e91906135ed565b600054610100900460ff16158080156123815750600054600160ff909116105b8061239b5750303b15801561239b575060005460ff166001145b6123fe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610fc8565b6000805460ff191660011790558015612421576000805461ff0019166101001790555b612429613274565b61243282613147565b8015612478576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b61248c63caaa3bb760e01b612b98565b61249581612be8565b61249e83612c37565b60006124a8612b48565b60008581526005919091016020526040902060078101549091506124d99084906301000000900462ffffff16612b6c565b600083815260048201602052604090206124f38382613c9b565b50837ffe07adc986f904acd19c0f4f5d0716973976f0450de010a753a52d119ddadbde8385604051610a17929190613d54565b60606000612532612b48565b905061254483611f5c83600301612e0e565b610c44611be66003830185612e18565b600061255e612b48565b600a015460405163f1052af560e01b81526001600160a01b039091169063f1052af59061258f90859060040161375f565b602060405180830381865afa1580156125ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d09190613d76565b8061079d575061079d826125e2612b48565b600b01906132a3565b60006125f68261318f565b61079d826131d3565b61260f636e19fa5760e11b612b98565b61261881612be8565b61262182612c37565b600061262b612b48565b600084815260059190910160205260409020905061264882612cf3565b600782018054600160301b9081900462ffffff9081166000908152600686016020526040902080546001600160a01b0319166001600160a01b039590951694909417909355905461127a92919004166001613eb6565b6000806126a9612b48565b60008581526005919091016020526040902060078101549091506126da908490600160301b900462ffffff16612b6c565b60009283526006016020525060409020546001600160a01b0316919050565b60606000612705612b48565b60008581526005919091016020526040902060078101549091506127369084906301000000900462ffffff16612b6c565b60008381526004820160205260409020805461071b90613ae7565b61276163f146f17f60e01b612b98565b61276a81612be8565b61277382612c37565b600061277d612b48565b600084815260059190910160209081526040808320600781015462ffffff16808552600282019093529220919250906127b68482613c9b565b506127c2816001613be2565b8260070160006101000a81548162ffffff021916908362ffffff160217905550837f5f667fb1eaf23e0fee1a9dcc154d842202b184eb9ad83502c00c784808a8d00d8483604051610a17929190613d54565b61281c6130e8565b6001600160a01b0381166128815760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fc8565b61288a81613147565b50565b61289d637c560c5f60e11b612b98565b6128a681612c37565b60006128b0612b48565b6000838152600582016020526040902060078101549192509062ffffff161580156128e9575060078101546301000000900462ffffff16155b801561290357506007810154600160301b900462ffffff16155b6129855760405162461bcd60e51b815260206004820152604760248201527f43616e6e6f742072656d6f766520646570656e64656e6379207769746820616460448201527f646974696f6e616c2043444e732c207265706f7369746f726965732c206f72206064820152667363726970747360c81b608482015260a401610fc8565b61299260018301846132b8565b5060008381526005830160205260408120818155906129b4600183018261352d565b6129c260038301600061352d565b6129d060058301600061352d565b5060070180546001600160481b031916905560405183907f60e2aa021c4f5303dd65e2173f0180636e4d42eaefc6187278e92bee9d06aa7290600090a2505050565b612a22637ce07d7360e11b612b98565b612a2b82612c37565b80612a34612b48565b60008481526005919091016020526040902060030190612a549082613c9b565b50817f774918414e4887efe5349a305fe253ee8b1e3fe0c2117012f0c215645693cbfd8260405161214e91906135ed565b60606000612a91612b48565b90506000612aa182600301612e0e565b90506000816001600160401b03811115612abd57612abd61364d565b604051908082528060200260200182016040528015612af057816020015b6060815260200190600190039081612adb5790505b50905060005b82811015611c1b57612b0e611be66003860183612e18565b828281518110612b2057612b20613bf5565b6020908102919091010152600101612af6565b6000611005612b40612b48565b600301612e0e565b7fb1832496845cc2c2d1bd0879f9ba0b1ef7ffcfdc79a541ee494477d8e10b9a3190565b8082106124785760405162461bcd60e51b8152600401610fc890613dce565b60606000610c44836132c4565b612ba3333083610b97565b61288a5760405162461bcd60e51b815260206004820152601660248201527513db9b1e4810591b5a5b881050d308185b1b1bddd95960521b6044820152606401610fc8565b805160000361288a5760405162461bcd60e51b815260206004820152601b60248201527a4d75737420696e707574206e6f6e2d656d70747920737472696e6760281b6044820152606401610fc8565b612c4c81612c43612b48565b60010190613320565b61288a5760405162461bcd60e51b815260206004820152601960248201527811195c195b99195b98de48191bd95cc81b9bdd08195e1a5cdd603a1b6044820152606401610fc8565b612ca981612ca0612b48565b60030190613320565b61288a5760405162461bcd60e51b815260206004820152601b60248201527a131a58d95b9cd9481d1e5c1948191bd95cc81b9bdd08195e1a5cdd602a1b6044820152606401610fc8565b6000807f42797465636f646553746f726167655f56322e302e305f5f5f5f5f5f5f5f5f203084604051602001612d2b93929190614005565b60405160208183030381529060405290508051602082016000f091506001600160a01b038216612d9d5760405162461bcd60e51b815260206004820152601e60248201527f436f6e7472616374417353746f726167653a205772697465204572726f7200006044820152606401610fc8565b50919050565b606060005b828160ff1660208110612dbd57612dbd613bf5565b1a60f81b6001600160f81b03191615801590612ddc575060208160ff16105b15612df35780612deb8161406d565b915050612da8565b60405191506040820160405280825282602083015250919050565b600061079d825490565b6000610c44838361332c565b612e2d81612554565b61288a5760405162461bcd60e51b815260206004820152601b60248201527a10dbdc994818dbdb9d1c9858dd081b9bdd081cdd5c1c1bdc9d1959602a1b6044820152606401610fc8565b6001600160a01b03811661288a5760405162461bcd60e51b815260206004820152601b60248201527a4d75737420696e707574206e6f6e2d7a65726f206164647265737360281b6044820152606401610fc8565b60606000612ed76131f2565b90506000816001600160a01b031663cc31a331856040518263ffffffff1660e01b8152600401612f07919061375f565b602060405180830381865afa158015612f24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f489190613d98565b90507f554e4b4e4f574e5f56455253494f4e5f535452494e475f5f5f5f5f5f5f5f5f208103612fe257604051632475d70960e01b81526001600160a01b03831690632475d70990612f9d90879060040161375f565b600060405180830381865afa158015612fba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fe8919081019061408c565b604051630eacc5e760e31b81526001600160a01b038316906375662f389061300e90879060040161375f565b600060405180830381865afa15801561302b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fe891908101906140d4565b60008060005b60208160ff1610156130b3576000868260ff166020811061307c5761307c613bf5565b1a90508015801590613091575060808160ff16105b156130aa578560ff168160ff16036130aa578260010192505b50600101613059565b8360ff168260ff1614925050509392505050565b6000610c448383613356565b6000610c44836001600160a01b038416613356565b336130f1611b05565b6001600160a01b0316146119815760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fc8565b613150816133a0565b80613159612b48565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6000610c44836001600160a01b0384166133f2565b60208151111561288a5760405162461bcd60e51b815260206004820152600f60248201526e537472696e6720746f6f206c6f6e6760881b6044820152606401610fc8565b8051600090829082036131e95750600092915050565b50506020015190565b60006131fc612b48565b600d0160009054906101000a90046001600160a01b03166001600160a01b03166310ba84aa6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613250573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110059190613db1565b600054610100900460ff1661329b5760405162461bcd60e51b8152600401610fc890614108565b6119816134e5565b6000610c44836001600160a01b038416613515565b6000610c4483836133f2565b60608160000180548060200260200160405190810160405280929190818152602001828054801561331457602002820191906000526020600020905b815481526020019060010190808311613300575b50505050509050919050565b6000610c448383613515565b600082600001828154811061334357613343613bf5565b9060005260206000200154905092915050565b60006133628383613515565b6133985750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561079d565b50600061079d565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600081815260018301602052604081205480156134db576000613416600183613c0b565b855490915060009061342a90600190613c0b565b905081811461348f57600086600001828154811061344a5761344a613bf5565b906000526020600020015490508087600001848154811061346d5761346d613bf5565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806134a0576134a0614153565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061079d565b600091505061079d565b600054610100900460ff1661350c5760405162461bcd60e51b8152600401610fc890614108565b61198133613147565b60009081526001919091016020526040902054151590565b50805461353990613ae7565b6000825580601f10613549575050565b601f01602090049060005260206000209081019061288a91905b808211156135775760008155600101613563565b5090565b6000806040838503121561358e57600080fd5b50508035926020909101359150565b60005b838110156135b85781810151838201526020016135a0565b50506000910152565b600081518084526135d981602086016020860161359d565b601f01601f19169290920160200192915050565b602081526000610c4460208301846135c1565b6020808252825182820181905260009190848201906040850190845b818110156136415783516001600160a01b03168352928401929184019160010161361c565b50909695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561368b5761368b61364d565b604052919050565b60006001600160401b038211156136ac576136ac61364d565b50601f01601f191660200190565b600082601f8301126136cb57600080fd5b81356136de6136d982613693565b613663565b8181528460208386010111156136f357600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561372557600080fd5b833592506020840135915060408401356001600160401b0381111561374957600080fd5b613755868287016136ba565b9150509250925092565b6001600160a01b0391909116815260200190565b6001600160a01b038116811461288a57600080fd5b60008060006060848603121561379d57600080fd5b83356137a881613773565b925060208401356137b881613773565b915060408401356001600160e01b0319811681146137d557600080fd5b809150509250925092565b6000602082840312156137f257600080fd5b5035919050565b600061012080835261380d8184018d6135c1565b90508281036020840152613821818c6135c1565b90508281036040840152613835818b6135c1565b905062ffffff808a1660608501528382036080850152613855828a6135c1565b915080881660a085015283820360c085015261387182886135c1565b925085151560e085015280851661010085015250509a9950505050505050505050565b6000806000606084860312156138a957600080fd5b83356138b481613773565b95602085013595506040909401359392505050565b600080604083850312156138dc57600080fd5b82356138e781613773565b946020939093013593505050565b6000806040838503121561390857600080fd5b82359150602083013561391a81613773565b809150509250929050565b6000806040838503121561393857600080fd5b8235915060208301356001600160401b0381111561395557600080fd5b613961858286016136ba565b9150509250929050565b600080600080600060a0868803121561398357600080fd5b853594506020860135935060408601356001600160401b03808211156139a857600080fd5b6139b489838a016136ba565b945060608801359150808211156139ca57600080fd5b6139d689838a016136ba565b935060808801359150808211156139ec57600080fd5b506139f9888289016136ba565b9150509295509295909350565b600060208284031215613a1857600080fd5b8135610c4481613773565b600060208284031215613a3557600080fd5b81356001600160401b03811115613a4b57600080fd5b610fe8848285016136ba565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015613aac57603f19888603018452613a9a8583516135c1565b94509285019290850190600101613a7e565b5092979650505050505050565b600080600060608486031215613ace57600080fd5b833592506020840135915060408401356137d581613773565b600181811c90821680613afb57607f821691505b602082108103612d9d57634e487b7160e01b600052602260045260246000fd5b60006020808385031215613b2e57600080fd5b82516001600160401b0380821115613b4557600080fd5b818501915085601f830112613b5957600080fd5b815181811115613b6b57613b6b61364d565b8060051b9150613b7c848301613663565b8181529183018401918481019088841115613b9657600080fd5b938501935b83851015613bc05784519250613bb083613773565b8282529385019390850190613b9b565b98975050505050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561079d5761079d613bcc565b634e487b7160e01b600052603260045260246000fd5b8181038181111561079d5761079d613bcc565b600060018201613c3057613c30613bcc565b5060010190565b601f821115613c8157600081815260208120601f850160051c81016020861015613c5e5750805b601f850160051c820191505b81811015613c7d57828155600101613c6a565b5050505b505050565b600019600383901b1c191660019190911b1790565b81516001600160401b03811115613cb457613cb461364d565b613cc881613cc28454613ae7565b84613c37565b602080601f831160018114613cf75760008415613ce55750858301515b613cef8582613c86565b865550613c7d565b600085815260208120601f198616915b82811015613d2657888601518255948401946001909101908401613d07565b5085821015613d445787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000613d6760408301856135c1565b90508260208301529392505050565b600060208284031215613d8857600080fd5b81518015158114610c4457600080fd5b600060208284031215613daa57600080fd5b5051919050565b600060208284031215613dc357600080fd5b8151610c4481613773565b602080825260129082015271496e646578206f7574206f662072616e676560701b604082015260600190565b6000613e086136d984613693565b9050828152838383011115613e1c57600080fd5b610c4483602083018461359d565b600082601f830112613e3b57600080fd5b610c4483835160208501613dfa565b600080600060608486031215613e5f57600080fd5b83516001600160401b0380821115613e7657600080fd5b613e8287838801613e2a565b94506020860151915080821115613e9857600080fd5b50613ea586828701613e2a565b925050604084015190509250925092565b62ffffff8181168382160190808211156111e4576111e4613bcc565b62ffffff8281168282160390808211156111e4576111e4613bcc565b606081526000613f0160608301866135c1565b8281036020840152613f1381866135c1565b90508281036040840152613f2781856135c1565b9695505050505050565b818103613f3c575050565b613f468254613ae7565b6001600160401b03811115613f5d57613f5d61364d565b613f6b81613cc28454613ae7565b6000601f821160018114613f995760008315613f875750848201545b613f918482613c86565b855550613ffe565b600085815260209020601f19841690600086815260209020845b83811015613fd35782860154825560019586019590910190602001613fb3565b5085831015613ff15781850154600019600388901b60f8161c191681555b50505060018360011b0184555b5050505050565b6a600b5981380380925939f360a81b8152607f60f91b600b820152600c81018490526000602c8201819052606084901b6001600160601b0319166038830152604c8201819052825161405e81604d85016020870161359d565b91909101604d01949350505050565b600060ff821660ff810361408357614083613bcc565b60010192915050565b60006020828403121561409e57600080fd5b81516001600160401b038111156140b457600080fd5b8201601f810184136140c557600080fd5b610fe884825160208401613dfa565b6000602082840312156140e657600080fd5b81516001600160401b038111156140fc57600080fd5b610fe884828501613e2a565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052603160045260246000fdfe5d7871759f44bc77f64c9eb647afdcf4a49d2fbba70fc64411a3bdc750b05274f79e11fc86b9bf37d5dfd4359c053136f7c046da6a08f9cf7ca56d80d5aab839a2646970667358221220f0ac9b9af391007a7205e68df125fa4ee54c8b1cc9f71ff28ca87726fd9a712164736f6c63430008130033",
|
|
1467
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102ac5760003560e01c80638da5cb5b11610173578063c4d66de8116100d4578063c4d66de8146105d6578063caaa3bb7146105e9578063cc86ba4b146105fc578063cea2961a1461060f578063cfb5192814610622578063dc33f4ae14610635578063dfa3be5314610648578063f0b993821461065b578063f146f17f1461066e578063f2fde38b14610681578063f8ac18be14610694578063f9c0fae6146106a7578063fb5cd19b146106ba578063fed37e82146106c257600080fd5b80638da5cb5b146104e057806392b794db146104e85780639532f2f4146104fb5780639897993714610510578063a0a82bd314610523578063a1a7a47b14610536578063ad6b414d14610549578063b1d24cb21461055c578063b86b69f11461056f578063ba22851214610577578063be3d3ee61461058a578063c07392701461059d578063c0cd565f146105b0578063c42ae814146105c357600080fd5b80634c66823c1161021d5780634c66823c146103ec5780634f5267ef146103f4578063518cb3df1461040757806352ccc0211461041a5780635668bc5e1461042d5780635710f83d14610440578063613d57fd1461045357806366d549a114610466578063675abe24146104795780636dfa9f561461048c578063715018a61461049f57806371b70a71146104a757806381e7837c146104ba5780638b6ad1ec146104cd57600080fd5b8062e87903146102b157806307f9f786146102da57806313762186146102ef57806316a1012d146103045780631a051d49146103175780631e9bef461461032a578063230448b11461033f57806325ffb376146103625780633e76919a1461038a57806344346a5f1461039d578063447b051a146103b35780634a78a932146103c65780634bd1a387146103d9575b600080fd5b6102c46102bf36600461357b565b6106ca565b6040516102d191906135ed565b60405180910390f35b6102e26107a3565b6040516102d19190613600565b6103026102fd366004613710565b610974565b005b610302610312366004613710565b610a25565b610302610325366004613710565b610acd565b610332610b7e565b6040516102d1919061375f565b61035261034d366004613788565b610b97565b60405190151581526020016102d1565b6103756103703660046137e0565b610c4b565b6040516102d1999897969594939291906137f9565b6103326103983660046137e0565b610e86565b6103a5610ff0565b6040519081526020016102d1565b6103026103c1366004613894565b61100a565b6102c46103d43660046138c9565b611098565b6103026103e73660046138f5565b6111eb565b6103326112bd565b6103026104023660046138c9565b6112d9565b6102c461041536600461357b565b6113bb565b6103026104283660046137e0565b611424565b6103a561043b3660046137e0565b611549565b61030261044e366004613925565b611576565b6103a56104613660046137e0565b611640565b61030261047436600461396b565b611666565b610302610487366004613a06565b6117bc565b61030261049a36600461357b565b61186a565b61030261196f565b6102c46104b536600461357b565b611983565b6103026104c8366004613a06565b6119da565b6103026104db366004613a06565b611a96565b610332611b05565b6103756104f6366004613a23565b611b19565b610503611b5d565b6040516102d19190613a57565b61030261051e366004613a06565b611c23565b610302610531366004613925565b611c92565b61030261054436600461357b565b611d5a565b6103026105573660046137e0565b611e39565b6102c461056a3660046137e0565b611f3e565b6103a5611f71565b6103a561058536600461357b565b612016565b610302610598366004613925565b6120db565b6103026105ab3660046137e0565b61215a565b6103026105be366004613ab9565b612250565b6103026105d1366004613925565b6122f1565b6103026105e4366004613a06565b612361565b6103026105f7366004613710565b61247c565b6102c461060a3660046137e0565b612526565b61035261061d366004613a06565b612554565b6103a5610630366004613a23565b6125eb565b610302610643366004613925565b6125ff565b61033261065636600461357b565b61269e565b6102c461066936600461357b565b6126f9565b61030261067c366004613925565b612751565b61030261068f366004613a06565b612814565b6103026106a23660046137e0565b61288d565b6103026106b5366004613925565b612a12565b610503612a85565b6103a5612b33565b606060006106d6612b48565b600085815260059190910160205260409020600781015490915061070090849062ffffff16612b6c565b60008381526002820160205260409020805461071b90613ae7565b80601f016020809104026020016040519081016040528092919081815260200182805461074790613ae7565b80156107945780601f1061076957610100808354040283529160200191610794565b820191906000526020600020905b81548152906001019060200180831161077757829003601f168201915b50505050509150505b92915050565b606060006107af612b48565b600a0160009054906101000a90046001600160a01b03166001600160a01b0316631676ddc36040518163ffffffff1660e01b8152600401600060405180830381865afa158015610803573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261082b9190810190613b1b565b8051909150600061084561083d612b48565b600b01612b8b565b90506000815184516108579190613be2565b6001600160401b0381111561086e5761086e61364d565b604051908082528060200260200182016040528015610897578160200160208202803683370190505b50805190915060005b818110156109695784811015610901578581815181106108c2576108c2613bf5565b60200260200101518382815181106108dc576108dc613bf5565b60200260200101906001600160a01b031690816001600160a01b031681525050610957565b8361090c8683613c0b565b8151811061091c5761091c613bf5565b602002602001015183828151811061093657610936613bf5565b60200260200101906001600160a01b031690816001600160a01b0316815250505b8061096181613c1e565b9150506108a0565b509095945050505050565b6109846309bb10c360e11b612b98565b61098d81612be8565b61099683612c37565b60006109a0612b48565b60008581526005919091016020526040902060078101549091506109ca90849062ffffff16612b6c565b600083815260028201602052604090206109e48382613c9b565b50837f5f667fb1eaf23e0fee1a9dcc154d842202b184eb9ad83502c00c784808a8d00d8385604051610a17929190613d54565b60405180910390a250505050565b610a356316a1012d60e01b612b98565b610a3e81612be8565b610a4783612c94565b6000610a51612b48565b6000858152600691909101602052604090206001810154909150610a7b90849062ffffff16612b6c565b610a8482612cf3565b60008481526020839052604080822080546001600160a01b0319166001600160a01b0394909416939093179092559051859160008051602061416a83398151915291a250505050565b610add631a051d4960e01b612b98565b610ae681612be8565b610aef83612c37565b6000610af9612b48565b6000858152600591909101602052604090206007810154909150610b2a908490600160301b900462ffffff16612b6c565b610b3382612cf3565b600084815260068301602052604080822080546001600160a01b0319166001600160a01b0394909416939093179092559051859160008051602061418a83398151915291a250505050565b6000610b88612b48565b546001600160a01b0316919050565b600080610ba2611b05565b6001600160a01b031614158015610c415750610bbc612b48565b546040516217798b60e61b81526001600160a01b03868116600483015285811660248301526001600160e01b031985166044830152909116906305de62c0906064016020604051808303816000875af1158015610c1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c419190613d76565b90505b9392505050565b606080606060006060600060606000806000610c65612b48565b60008c8152600591909101602052604090209050610c828b612da3565b8154610c8d90612da3565b6007830154600184018054909162ffffff8082169260038801926301000000810483169260058a0192600160301b90920416801515918790610cce90613ae7565b80601f0160208091040260200160405190810160405280929190818152602001828054610cfa90613ae7565b8015610d475780601f10610d1c57610100808354040283529160200191610d47565b820191906000526020600020905b815481529060010190602001808311610d2a57829003601f168201915b50505050509650848054610d5a90613ae7565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8690613ae7565b8015610dd35780601f10610da857610100808354040283529160200191610dd3565b820191906000526020600020905b815481529060010190602001808311610db657829003601f168201915b50505050509450828054610de690613ae7565b80601f0160208091040260200160405190810160405280929190818152602001828054610e1290613ae7565b8015610e5f5780601f10610e3457610100808354040283529160200191610e5f565b820191906000526020600020905b815481529060010190602001808311610e4257829003601f168201915b50505050509250995099509950995099509950995099509950509193959799909294969850565b600080610e91612b48565b600a0160009054906101000a90046001600160a01b03166001600160a01b0316637ac4f3296040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ee5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f099190613d98565b905080831015610f8957610f1b612b48565b600a0154604051631ef6bdbf60e21b8152600481018590526001600160a01b0390911690637bdaf6fc90602401602060405180830381865afa158015610f65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c449190613db1565b6000610f9e610f96612b48565b600b01612e0e565b9050610faa8183613be2565b8410610fd15760405162461bcd60e51b8152600401610fc890613dce565b60405180910390fd5b610fe8828503610fdf612b48565b600b0190612e18565b949350505050565b6000611005610ffd612b48565b600101612e0e565b905090565b61101a63223d828d60e11b612b98565b61102381612c37565b61102c83612e24565b80611035612b48565b6001600160a01b03851660008181526009929092016020908152604080842087855282529283902093909355905183815284927ff2f4de0c34a4899f5cf7a30aced71b0c27f629f80fb61efc06c7a12ecabdb7ba910160405180910390a3505050565b60606110a383612e24565b60006110ad612b48565b6001600160a01b038516600090815260099190910160209081526040808320868452909152902054905080156110ee576110e681612da3565b91505061079d565b604051633ae7357560e21b8152600481018490526001600160a01b0385169063eb9cd5d490602401600060405180830381865afa92505050801561115457506040513d6000823e601f3d908101601f191682016040526111519190810190613e4a565b60015b6111d85760405162461bcd60e51b815260206004820152604960248201527f436f6e747261637420646f6573206e6f7420696d706c656d656e742070726f6a60448201527f65637453637269707444657461696c7320616e6420686173206e6f206f7665726064820152683934b2329039b2ba1760b91b608482015260a401610fc8565b8294505050505061079d565b5092915050565b6111fb634bd1a38760e01b612b98565b61120481612e77565b61120d82612c37565b6000611217612b48565b600084815260059190910160209081526040808320600781018054600160301b9081900462ffffff9081168752600684019095529290942080546001600160a01b0319166001600160a01b038816179055925492935061127a9204166001613eb6565b60078201805462ffffff92909216600160301b0262ffffff60301b19909216919091179055604051839060008051602061418a83398151915290600090a2505050565b60006112c7612b48565b600a01546001600160a01b0316919050565b6112e9634f5267ef60e01b612b98565b60006112f3612b48565b6001600160a01b038416600090815260098201602090815260408083208684529091529020549091506113665760405162461bcd60e51b815260206004820152601b60248201527a139bc81bdd995c9c9a5919481cd95d08199bdc881c1c9bda9958dd602a1b6044820152606401610fc8565b6001600160a01b03831660008181526009830160209081526040808320868452909152808220829055518492917f618154ee1a16009759db8e59ff744e79dd094831be73c4b9383f885678c20b7391a3505050565b606060006113c7612b48565b60008581526005919091016020526040902060078101549091506113f8908490600160301b900462ffffff16612b6c565b60008381526006820160205260409020546001600160a01b031661141b81612ecb565b95945050505050565b6114346352ccc02160e01b612b98565b61143d81612c37565b6000611447612b48565b6000838152600591909101602052604090206007810154909150600160301b900462ffffff166114b95760405162461bcd60e51b815260206004820152601e60248201527f746865726520617265206e6f207363726970747320746f2072656d6f766500006044820152606401610fc8565b600781015460068201906000906114de90600190600160301b900462ffffff16613ed2565b62ffffff908116825260208201929092526040908101600090812080546001600160a01b031916905560078401805462ffffff60301b198116600160301b91829004861660001901909516029390931790925551839160008051602061418a83398151915291a25050565b6000611553612b48565b6000928352600501602052506040902060070154600160301b900462ffffff1690565b611586635710f83d60e01b612b98565b61158f81612be8565b61159882612c37565b60006115a2612b48565b60008481526005919091016020908152604080832060078101546301000000900462ffffff16808552600482019093529220919250906115e28482613c9b565b506115ee816001613be2565b8260070160036101000a81548162ffffff021916908362ffffff160217905550837ffe07adc986f904acd19c0f4f5d0716973976f0450de010a753a52d119ddadbde8483604051610a17929190613d54565b600061164a612b48565b600092835260060160205250604090206001015462ffffff1690565b6116766366d549a160e01b612b98565b61167f84612c94565b61168c8560406001613053565b6116d55760405162461bcd60e51b815260206004820152601a60248201527901b5d5cdd0818dbdb9d185a5b88195e1858dd1b1e481bdb9948160361b6044820152606401610fc8565b60006116df612b48565b90506116ee60018201876130c7565b6117365760405162461bcd60e51b8152602060048201526019602482015278446570656e64656e637920616c72656164792065786973747360381b6044820152606401610fc8565b60008681526005820160205260409020858155600181016117578682613c9b565b50600381016117668582613c9b565b50600581016117758482613c9b565b5085877f14d15ecf0e955bdd7a921efba642deef4d718696d3fc369454c84817fed0fb778787876040516117ab93929190613eee565b60405180910390a350505050505050565b6117cc6319d6af8960e21b612b98565b6117d581612e77565b6117ea816117e1612b48565b600b01906130d3565b6118335760405162461bcd60e51b815260206004820152601a60248201527910dbdb9d1c9858dd08185b1c9958591e481cdd5c1c1bdc9d195960321b6044820152606401610fc8565b6040516001600160a01b038216907f85796181e67d093fd8fc344cdf114629c14c1396c47bfd9cda9392285e74d43f90600090a250565b61187a6336fd4fab60e11b612b98565b61188382612c37565b600061188d612b48565b600084815260058201602052604090206007810154919250906301000000900462ffffff166118bc8482612b6c565b60006118c9600183613c0b565b60008781526005860160209081526040808320848452600490810183528184208a85529088019092529091209192506119029082613f31565b506000818152600484016020526040812061191c9161352d565b60078301805465ffffff0000001916630100000062ffffff841602179055604051859087907fc02725dfc9639e3399432cdae3db1c062229f4cc41bcc18631517617c020b71c90600090a3505050505050565b6119776130e8565b6119816000613147565b565b6060600061198f612b48565b60008581526006919091016020526040902060018101549091506119b990849062ffffff16612b6c565b6000838152602082905260409020546001600160a01b031661141b81612ecb565b6119ea632079e0df60e21b612b98565b6119ff816119f6612b48565b600b019061317a565b611a5f5760405162461bcd60e51b815260206004820152602b60248201527f436f726520636f6e747261637420616c72656164792072656d6f766564206f7260448201526a081b9bdd081a5b881cd95d60aa1b6064820152608401610fc8565b6040516001600160a01b038216907f24f057e6bd463ac72bb963a1e55a41494d252695f97a7671c2b7018345eb31f790600090a250565b611aa66322dab47b60e21b612b98565b611aaf81612e77565b80611ab8612b48565b600a0180546001600160a01b0319166001600160a01b03928316179055604051908216907f38429341ba977e6c97809dd9fed1f58cf5c409bfe8132475b3f73bda02dd84f690600090a250565b60006110056033546001600160a01b031690565b60608060606000606060006060600080611b328a61318f565b611b3e6103708b6131d3565b9850985098509850985098509850985098509193959799909294969850565b60606000611b69612b48565b90506000611b7982600101612e0e565b90506000816001600160401b03811115611b9557611b9561364d565b604051908082528060200260200182016040528015611bc857816020015b6060815260200190600190039081611bb35790505b50905060005b82811015611c1b57611beb611be66001860183612e18565b612da3565b828281518110611bfd57611bfd613bf5565b60200260200101819052508080611c1390613c1e565b915050611bce565b509392505050565b611c33639897993760e01b612b98565b611c3c81612e77565b80611c45612b48565b600d0180546001600160a01b0319166001600160a01b03928316179055604051908216907f0b9c67948019a508c85a8b9abbe9b2ff80ab26c068bc4edb68425299f360be6e90600090a250565b611ca263a0a82bd360e01b612b98565b611cab81612be8565b611cb482612c94565b6000611cbe612b48565b6000848152600691909101602052604090209050611cdb82612cf3565b6001828101805462ffffff908116600090815260208690526040902080546001600160a01b0319166001600160a01b03959095169490941790935554611d22921690613eb6565b60018201805462ffffff191662ffffff92909216919091179055604051839060008051602061416a83398151915290600090a2505050565b611d6a63a1a7a47b60e01b612b98565b611d7382612c37565b6000611d7d612b48565b600084815260059190910160205260409020600781015490915062ffffff16611da68382612b6c565b6000611db3600183613c0b565b60008181526002850160205260408082208783529120919250611dd69082613f31565b5060008181526002840160205260408120611df09161352d565b60078301805462ffffff191662ffffff8316179055604051849086907f225454b600cf489553fde6e3b7f5e458b1093c035390b678067ea799b3b016cd90600090a35050505050565b611e4963ad6b414d60e01b612b98565b611e5281612c94565b6000611e5c612b48565b600083815260069190910160205260409020600181015490915062ffffff1680611ed35760405162461bcd60e51b815260206004820152602260248201527f5468657265206973206e6f206c6963656e7365207465787420746f2072656d6f604482015261766560f01b6064820152608401610fc8565b816000611ee1600184613ed2565b62ffffff908116825260208201929092526040908101600090812080546001600160a01b031916905560018501805462ffffff191660001986019094169390931790925551849160008051602061416a83398151915291a2505050565b60606000611f4a612b48565b9050611f6183611f5c83600101612e0e565b612b6c565b610c44611be66001830185612e18565b600080611f7c612b48565b600a0160009054906101000a90046001600160a01b03166001600160a01b0316637ac4f3296040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fd0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ff49190613d98565b90506000612003610f96612b48565b905061200f8183613be2565b9250505090565b600080612021612b48565b6000858152600591909101602052604090206007810154909150612052908490600160301b900462ffffff16612b6c565b61205a6131f2565b60008481526006830160205260409081902054905163cc31a33160e01b81526001600160a01b039283169263cc31a3319261209a9291169060040161375f565b602060405180830381865afa1580156120b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe89190613d98565b6120eb635f1e9f7360e11b612b98565b6120f482612c37565b806120fd612b48565b6000848152600591909101602052604090206001019061211d9082613c9b565b50817fc9890a31ec780bb5a8a017d683d3913f97260548d71c2cee78194ed2833f02358260405161214e91906135ed565b60405180910390a25050565b61216a630c07392760e41b612b98565b806121c35760405162461bcd60e51b815260206004820152602360248201527f4c6963656e736520747970652063616e6e6f7420626520656d70747920737472604482015262696e6760e81b6064820152608401610fc8565b6121d8816121cf612b48565b600301906130c7565b6122225760405162461bcd60e51b815260206004820152601b60248201527a4c6963656e7365207479706520616c72656164792065786973747360281b6044820152606401610fc8565b60405181907fad5dcce4588345db351371d105540f3fb69966f418d923539f19d5f44a1cfc4b90600090a250565b61226063c0cd565f60e01b612b98565b61226981612e77565b61227283612c37565b600061227c612b48565b60008581526005919091016020526040902060078101549091506122ad908490600160301b900462ffffff16612b6c565b600083815260068201602052604080822080546001600160a01b0319166001600160a01b03861617905551859160008051602061418a83398151915291a250505050565b61230163310aba0560e21b612b98565b61230a82612c37565b80612313612b48565b600084815260059182016020526040902001906123309082613c9b565b50817f94747dffac14b8b9a15e699c998cc8f42ad81f21ae95e155c8a1c49403117b8b8260405161214e91906135ed565b600054610100900460ff16158080156123815750600054600160ff909116105b8061239b5750303b15801561239b575060005460ff166001145b6123fe5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610fc8565b6000805460ff191660011790558015612421576000805461ff0019166101001790555b612429613274565b61243282613147565b8015612478576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b61248c63caaa3bb760e01b612b98565b61249581612be8565b61249e83612c37565b60006124a8612b48565b60008581526005919091016020526040902060078101549091506124d99084906301000000900462ffffff16612b6c565b600083815260048201602052604090206124f38382613c9b565b50837ffe07adc986f904acd19c0f4f5d0716973976f0450de010a753a52d119ddadbde8385604051610a17929190613d54565b60606000612532612b48565b905061254483611f5c83600301612e0e565b610c44611be66003830185612e18565b600061255e612b48565b600a015460405163f1052af560e01b81526001600160a01b039091169063f1052af59061258f90859060040161375f565b602060405180830381865afa1580156125ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d09190613d76565b8061079d575061079d826125e2612b48565b600b01906132a3565b60006125f68261318f565b61079d826131d3565b61260f636e19fa5760e11b612b98565b61261881612be8565b61262182612c37565b600061262b612b48565b600084815260059190910160205260409020905061264882612cf3565b600782018054600160301b9081900462ffffff9081166000908152600686016020526040902080546001600160a01b0319166001600160a01b039590951694909417909355905461127a92919004166001613eb6565b6000806126a9612b48565b60008581526005919091016020526040902060078101549091506126da908490600160301b900462ffffff16612b6c565b60009283526006016020525060409020546001600160a01b0316919050565b60606000612705612b48565b60008581526005919091016020526040902060078101549091506127369084906301000000900462ffffff16612b6c565b60008381526004820160205260409020805461071b90613ae7565b61276163f146f17f60e01b612b98565b61276a81612be8565b61277382612c37565b600061277d612b48565b600084815260059190910160209081526040808320600781015462ffffff16808552600282019093529220919250906127b68482613c9b565b506127c2816001613be2565b8260070160006101000a81548162ffffff021916908362ffffff160217905550837f5f667fb1eaf23e0fee1a9dcc154d842202b184eb9ad83502c00c784808a8d00d8483604051610a17929190613d54565b61281c6130e8565b6001600160a01b0381166128815760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fc8565b61288a81613147565b50565b61289d637c560c5f60e11b612b98565b6128a681612c37565b60006128b0612b48565b6000838152600582016020526040902060078101549192509062ffffff161580156128e9575060078101546301000000900462ffffff16155b801561290357506007810154600160301b900462ffffff16155b6129855760405162461bcd60e51b815260206004820152604760248201527f43616e6e6f742072656d6f766520646570656e64656e6379207769746820616460448201527f646974696f6e616c2043444e732c207265706f7369746f726965732c206f72206064820152667363726970747360c81b608482015260a401610fc8565b61299260018301846132b8565b5060008381526005830160205260408120818155906129b4600183018261352d565b6129c260038301600061352d565b6129d060058301600061352d565b5060070180546001600160481b031916905560405183907f60e2aa021c4f5303dd65e2173f0180636e4d42eaefc6187278e92bee9d06aa7290600090a2505050565b612a22637ce07d7360e11b612b98565b612a2b82612c37565b80612a34612b48565b60008481526005919091016020526040902060030190612a549082613c9b565b50817f774918414e4887efe5349a305fe253ee8b1e3fe0c2117012f0c215645693cbfd8260405161214e91906135ed565b60606000612a91612b48565b90506000612aa182600301612e0e565b90506000816001600160401b03811115612abd57612abd61364d565b604051908082528060200260200182016040528015612af057816020015b6060815260200190600190039081612adb5790505b50905060005b82811015611c1b57612b0e611be66003860183612e18565b828281518110612b2057612b20613bf5565b6020908102919091010152600101612af6565b6000611005612b40612b48565b600301612e0e565b7fb1832496845cc2c2d1bd0879f9ba0b1ef7ffcfdc79a541ee494477d8e10b9a3190565b8082106124785760405162461bcd60e51b8152600401610fc890613dce565b60606000610c44836132c4565b612ba3333083610b97565b61288a5760405162461bcd60e51b815260206004820152601660248201527513db9b1e4810591b5a5b881050d308185b1b1bddd95960521b6044820152606401610fc8565b805160000361288a5760405162461bcd60e51b815260206004820152601b60248201527a4d75737420696e707574206e6f6e2d656d70747920737472696e6760281b6044820152606401610fc8565b612c4c81612c43612b48565b60010190613320565b61288a5760405162461bcd60e51b815260206004820152601960248201527811195c195b99195b98de48191bd95cc81b9bdd08195e1a5cdd603a1b6044820152606401610fc8565b612ca981612ca0612b48565b60030190613320565b61288a5760405162461bcd60e51b815260206004820152601b60248201527a131a58d95b9cd9481d1e5c1948191bd95cc81b9bdd08195e1a5cdd602a1b6044820152606401610fc8565b6000807f42797465636f646553746f726167655f56322e302e305f5f5f5f5f5f5f5f5f203084604051602001612d2b93929190614005565b60405160208183030381529060405290508051602082016000f091506001600160a01b038216612d9d5760405162461bcd60e51b815260206004820152601e60248201527f436f6e7472616374417353746f726167653a205772697465204572726f7200006044820152606401610fc8565b50919050565b606060005b828160ff1660208110612dbd57612dbd613bf5565b1a60f81b6001600160f81b03191615801590612ddc575060208160ff16105b15612df35780612deb8161406d565b915050612da8565b60405191506040820160405280825282602083015250919050565b600061079d825490565b6000610c44838361332c565b612e2d81612554565b61288a5760405162461bcd60e51b815260206004820152601b60248201527a10dbdc994818dbdb9d1c9858dd081b9bdd081cdd5c1c1bdc9d1959602a1b6044820152606401610fc8565b6001600160a01b03811661288a5760405162461bcd60e51b815260206004820152601b60248201527a4d75737420696e707574206e6f6e2d7a65726f206164647265737360281b6044820152606401610fc8565b60606000612ed76131f2565b90506000816001600160a01b031663cc31a331856040518263ffffffff1660e01b8152600401612f07919061375f565b602060405180830381865afa158015612f24573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f489190613d98565b90507f554e4b4e4f574e5f56455253494f4e5f535452494e475f5f5f5f5f5f5f5f5f208103612fe257604051632475d70960e01b81526001600160a01b03831690632475d70990612f9d90879060040161375f565b600060405180830381865afa158015612fba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fe8919081019061408c565b604051630eacc5e760e31b81526001600160a01b038316906375662f389061300e90879060040161375f565b600060405180830381865afa15801561302b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610fe891908101906140d4565b60008060005b60208160ff1610156130b3576000868260ff166020811061307c5761307c613bf5565b1a90508015801590613091575060808160ff16105b156130aa578560ff168160ff16036130aa578260010192505b50600101613059565b8360ff168260ff1614925050509392505050565b6000610c448383613356565b6000610c44836001600160a01b038416613356565b336130f1611b05565b6001600160a01b0316146119815760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fc8565b613150816133a0565b80613159612b48565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6000610c44836001600160a01b0384166133f2565b60208151111561288a5760405162461bcd60e51b815260206004820152600f60248201526e537472696e6720746f6f206c6f6e6760881b6044820152606401610fc8565b8051600090829082036131e95750600092915050565b50506020015190565b60006131fc612b48565b600d0160009054906101000a90046001600160a01b03166001600160a01b03166310ba84aa6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613250573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110059190613db1565b600054610100900460ff1661329b5760405162461bcd60e51b8152600401610fc890614108565b6119816134e5565b6000610c44836001600160a01b038416613515565b6000610c4483836133f2565b60608160000180548060200260200160405190810160405280929190818152602001828054801561331457602002820191906000526020600020905b815481526020019060010190808311613300575b50505050509050919050565b6000610c448383613515565b600082600001828154811061334357613343613bf5565b9060005260206000200154905092915050565b60006133628383613515565b6133985750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561079d565b50600061079d565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600081815260018301602052604081205480156134db576000613416600183613c0b565b855490915060009061342a90600190613c0b565b905081811461348f57600086600001828154811061344a5761344a613bf5565b906000526020600020015490508087600001848154811061346d5761346d613bf5565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806134a0576134a0614153565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061079d565b600091505061079d565b600054610100900460ff1661350c5760405162461bcd60e51b8152600401610fc890614108565b61198133613147565b60009081526001919091016020526040902054151590565b50805461353990613ae7565b6000825580601f10613549575050565b601f01602090049060005260206000209081019061288a91905b808211156135775760008155600101613563565b5090565b6000806040838503121561358e57600080fd5b50508035926020909101359150565b60005b838110156135b85781810151838201526020016135a0565b50506000910152565b600081518084526135d981602086016020860161359d565b601f01601f19169290920160200192915050565b602081526000610c4460208301846135c1565b6020808252825182820181905260009190848201906040850190845b818110156136415783516001600160a01b03168352928401929184019160010161361c565b50909695505050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561368b5761368b61364d565b604052919050565b60006001600160401b038211156136ac576136ac61364d565b50601f01601f191660200190565b600082601f8301126136cb57600080fd5b81356136de6136d982613693565b613663565b8181528460208386010111156136f357600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561372557600080fd5b833592506020840135915060408401356001600160401b0381111561374957600080fd5b613755868287016136ba565b9150509250925092565b6001600160a01b0391909116815260200190565b6001600160a01b038116811461288a57600080fd5b60008060006060848603121561379d57600080fd5b83356137a881613773565b925060208401356137b881613773565b915060408401356001600160e01b0319811681146137d557600080fd5b809150509250925092565b6000602082840312156137f257600080fd5b5035919050565b600061012080835261380d8184018d6135c1565b90508281036020840152613821818c6135c1565b90508281036040840152613835818b6135c1565b905062ffffff808a1660608501528382036080850152613855828a6135c1565b915080881660a085015283820360c085015261387182886135c1565b925085151560e085015280851661010085015250509a9950505050505050505050565b6000806000606084860312156138a957600080fd5b83356138b481613773565b95602085013595506040909401359392505050565b600080604083850312156138dc57600080fd5b82356138e781613773565b946020939093013593505050565b6000806040838503121561390857600080fd5b82359150602083013561391a81613773565b809150509250929050565b6000806040838503121561393857600080fd5b8235915060208301356001600160401b0381111561395557600080fd5b613961858286016136ba565b9150509250929050565b600080600080600060a0868803121561398357600080fd5b853594506020860135935060408601356001600160401b03808211156139a857600080fd5b6139b489838a016136ba565b945060608801359150808211156139ca57600080fd5b6139d689838a016136ba565b935060808801359150808211156139ec57600080fd5b506139f9888289016136ba565b9150509295509295909350565b600060208284031215613a1857600080fd5b8135610c4481613773565b600060208284031215613a3557600080fd5b81356001600160401b03811115613a4b57600080fd5b610fe8848285016136ba565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015613aac57603f19888603018452613a9a8583516135c1565b94509285019290850190600101613a7e565b5092979650505050505050565b600080600060608486031215613ace57600080fd5b833592506020840135915060408401356137d581613773565b600181811c90821680613afb57607f821691505b602082108103612d9d57634e487b7160e01b600052602260045260246000fd5b60006020808385031215613b2e57600080fd5b82516001600160401b0380821115613b4557600080fd5b818501915085601f830112613b5957600080fd5b815181811115613b6b57613b6b61364d565b8060051b9150613b7c848301613663565b8181529183018401918481019088841115613b9657600080fd5b938501935b83851015613bc05784519250613bb083613773565b8282529385019390850190613b9b565b98975050505050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561079d5761079d613bcc565b634e487b7160e01b600052603260045260246000fd5b8181038181111561079d5761079d613bcc565b600060018201613c3057613c30613bcc565b5060010190565b601f821115613c8157600081815260208120601f850160051c81016020861015613c5e5750805b601f850160051c820191505b81811015613c7d57828155600101613c6a565b5050505b505050565b600019600383901b1c191660019190911b1790565b81516001600160401b03811115613cb457613cb461364d565b613cc881613cc28454613ae7565b84613c37565b602080601f831160018114613cf75760008415613ce55750858301515b613cef8582613c86565b865550613c7d565b600085815260208120601f198616915b82811015613d2657888601518255948401946001909101908401613d07565b5085821015613d445787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000613d6760408301856135c1565b90508260208301529392505050565b600060208284031215613d8857600080fd5b81518015158114610c4457600080fd5b600060208284031215613daa57600080fd5b5051919050565b600060208284031215613dc357600080fd5b8151610c4481613773565b602080825260129082015271496e646578206f7574206f662072616e676560701b604082015260600190565b6000613e086136d984613693565b9050828152838383011115613e1c57600080fd5b610c4483602083018461359d565b600082601f830112613e3b57600080fd5b610c4483835160208501613dfa565b600080600060608486031215613e5f57600080fd5b83516001600160401b0380821115613e7657600080fd5b613e8287838801613e2a565b94506020860151915080821115613e9857600080fd5b50613ea586828701613e2a565b925050604084015190509250925092565b62ffffff8181168382160190808211156111e4576111e4613bcc565b62ffffff8281168282160390808211156111e4576111e4613bcc565b606081526000613f0160608301866135c1565b8281036020840152613f1381866135c1565b90508281036040840152613f2781856135c1565b9695505050505050565b818103613f3c575050565b613f468254613ae7565b6001600160401b03811115613f5d57613f5d61364d565b613f6b81613cc28454613ae7565b6000601f821160018114613f995760008315613f875750848201545b613f918482613c86565b855550613ffe565b600085815260209020601f19841690600086815260209020845b83811015613fd35782860154825560019586019590910190602001613fb3565b5085831015613ff15781850154600019600388901b60f8161c191681555b50505060018360011b0184555b5050505050565b6a600b5981380380925939f360a81b8152607f60f91b600b820152600c81018490526000602c8201819052606084901b6001600160601b0319166038830152604c8201819052825161405e81604d85016020870161359d565b91909101604d01949350505050565b600060ff821660ff810361408357614083613bcc565b60010192915050565b60006020828403121561409e57600080fd5b81516001600160401b038111156140b457600080fd5b8201601f810184136140c557600080fd5b610fe884825160208401613dfa565b6000602082840312156140e657600080fd5b81516001600160401b038111156140fc57600080fd5b610fe884828501613e2a565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052603160045260246000fdfe5d7871759f44bc77f64c9eb647afdcf4a49d2fbba70fc64411a3bdc750b05274f79e11fc86b9bf37d5dfd4359c053136f7c046da6a08f9cf7ca56d80d5aab839a2646970667358221220f0ac9b9af391007a7205e68df125fa4ee54c8b1cc9f71ff28ca87726fd9a712164736f6c63430008130033",
|
|
1468
|
+
"linkReferences": {},
|
|
1469
|
+
"deployedLinkReferences": {}
|
|
1351
1470
|
}
|