@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.
Files changed (219) hide show
  1. package/README.md +22 -38
  2. package/artifacts/contracts/AdminACLV1.sol/AdminACLV1.json +2 -2
  3. package/artifacts/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2.sol/BytecodeStorageReaderContractV2.json +201 -0
  4. package/artifacts/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2_Web3Call.sol/BytecodeStorageReaderContractV2_Web3Call.json +201 -0
  5. package/artifacts/contracts/BytecodeStorageReaders/UniversalBytecodeStorageReader.sol/UniversalBytecodeStorageReader.json +154 -0
  6. package/artifacts/contracts/BytecodeStorageV2Writer.sol/BytecodeStorageV2Writer.json +87 -0
  7. package/artifacts/contracts/DependencyRegistryV0.sol/DependencyRegistryV0.json +174 -55
  8. package/artifacts/contracts/GenArt721CoreV3_Curated.sol/GenArt721CoreV3_Curated.json +2493 -0
  9. package/artifacts/contracts/OwnedCreate2FactoryV0.sol/OwnedCreate2FactoryV0.json +311 -0
  10. package/artifacts/contracts/archive/GenArt721CoreV3.sol/GenArt721CoreV3.json +15 -2
  11. package/artifacts/contracts/archive/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +15 -2
  12. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol/MinterDAExpV2.json +2 -2
  13. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol/MinterDAExpV3.json +2 -2
  14. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV4.sol/MinterDAExpV4.json +2 -2
  15. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +2 -2
  16. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +2 -2
  17. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +2 -2
  18. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol/MinterDALinV2.json +2 -2
  19. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol/MinterDALinV3.json +2 -2
  20. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV4.sol/MinterDALinV4.json +2 -2
  21. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol/MinterHolderV1.json +2 -2
  22. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +2 -2
  23. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol/MinterHolderV3.json +2 -2
  24. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV4.sol/MinterHolderV4.json +2 -2
  25. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol/MinterMerkleV1.json +2 -2
  26. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol/MinterMerkleV2.json +2 -2
  27. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol/MinterMerkleV3.json +2 -2
  28. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol/MinterMerkleV4.json +2 -2
  29. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV5.sol/MinterMerkleV5.json +2 -2
  30. package/artifacts/contracts/archive/minter-suite/Minters/MinterPolyptych/MinterPolyptychV0.sol/IGenArt721CoreContractV3WithRandomizer.json +37 -0
  31. package/artifacts/contracts/archive/minter-suite/Minters/MinterPolyptych/MinterPolyptychV0.sol/MinterPolyptychV0.json +2 -2
  32. package/artifacts/contracts/archive/minter-suite/Minters/MinterSEA/MinterSEAV0.sol/MinterSEAV0.json +2 -2
  33. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +2 -2
  34. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +2 -2
  35. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV4.sol/MinterSetPriceV4.json +2 -2
  36. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +2 -2
  37. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +2 -2
  38. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +2 -2
  39. package/artifacts/contracts/engine/V3/EngineFactoryV0.sol/EngineFactoryV0.json +20 -2
  40. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +48 -12
  41. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +76 -40
  42. package/artifacts/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol/GenArt721CoreV3_Engine_Flex_PROOF.json +15 -2
  43. package/artifacts/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol/AdminACLV0_PROHIBITION.json +2 -2
  44. package/artifacts/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol/GenArt721CoreV3_Engine_Flex_PROHIBITION.json +15 -2
  45. package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.json +37 -0
  46. package/artifacts/contracts/engine-registry/CoreRegistryV1.sol/CoreRegistryV1.json +2 -2
  47. package/artifacts/contracts/generator/AddressChunks.sol/AddressChunks.json +10 -0
  48. package/artifacts/contracts/generator/GenArt721GeneratorV0.sol/GenArt721GeneratorV0.json +333 -0
  49. package/artifacts/contracts/generator/GenArt721GeneratorV0.sol/ILegacyGenArt721CoreV2_PBAB_Flex.json +47 -0
  50. package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReader.sol/IBytecodeStorageReader.json +7 -7
  51. package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReaderV2.sol/IBytecodeStorageReaderV2.json +7 -7
  52. package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReader_Base.sol/IBytecodeStorageReader_Base.json +30 -0
  53. package/artifacts/contracts/interfaces/v0.8.x/ICoreRegistryV1.sol/ICoreRegistryV1.json +13 -0
  54. package/artifacts/contracts/interfaces/v0.8.x/IDelegateRegistry.sol/IDelegateRegistry.json +820 -0
  55. package/artifacts/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol/IDependencyRegistryV0.json +183 -0
  56. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +37 -0
  57. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +37 -0
  58. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +42 -0
  59. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +42 -0
  60. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.sol/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.json +37 -0
  61. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_PreV3p2.sol/IGenArt721CoreContractV3_Engine_PreV3p2.json +37 -0
  62. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV0.sol/IGenArt721CoreProjectScriptV0.json +59 -0
  63. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV1.sol/IGenArt721CoreProjectScriptV1.json +64 -0
  64. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV0.sol/IGenArt721CoreTokenHashProviderV0.json +30 -0
  65. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV1.sol/IGenArt721CoreTokenHashProviderV1.json +30 -0
  66. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721GeneratorV0.sol/IGenArt721GeneratorV0.json +63 -0
  67. package/artifacts/contracts/interfaces/v0.8.x/IOwnedCreate2FactoryV0.sol/IOwnedCreate2FactoryV0.json +74 -0
  68. package/artifacts/contracts/interfaces/v0.8.x/IPMPAugmentHook.sol/IPMPAugmentHook.json +83 -0
  69. package/artifacts/contracts/interfaces/v0.8.x/IPMPConfigureHook.sol/IPMPConfigureHook.json +80 -0
  70. package/artifacts/contracts/interfaces/v0.8.x/IPMPV0.sol/IPMPV0.json +402 -0
  71. package/artifacts/contracts/interfaces/v0.8.x/ISeaDropShimForContract.sol/ISeaDropShimForContract.json +37 -0
  72. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterMinPriceV0.sol/ISharedMinterMinPriceV0.json +37 -0
  73. package/artifacts/contracts/interfaces/v0.8.x/IUniversalBytecodeStorageReader.sol/IUniversalBytecodeStorageReader.json +69 -0
  74. package/artifacts/contracts/interfaces/v0.8.x/IWeb3Call.sol/IWeb3Call.json +47 -0
  75. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ERC721SeaDropStructsErrorsAndEvents.sol/ERC721SeaDropStructsErrorsAndEvents.json +43 -0
  76. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/INonFungibleSeaDropToken.sol/INonFungibleSeaDropToken.json +715 -0
  77. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDrop.sol/ISeaDrop.json +1571 -0
  78. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDropTokenContractMetadata.sol/ISeaDropTokenContractMetadata.json +345 -0
  79. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropErrorsAndEvents.sol/SeaDropErrorsAndEvents.json +717 -0
  80. package/artifacts/contracts/libs/integration-refs/delegation-registry/DelegateRegistry.sol/DelegateRegistry.json +846 -0
  81. package/artifacts/contracts/libs/integration-refs/delegation-registry/libraries/RegistryHashes.sol/RegistryHashes.json +10 -0
  82. package/artifacts/contracts/libs/integration-refs/delegation-registry/libraries/RegistryOps.sol/RegistryOps.json +10 -0
  83. package/artifacts/contracts/libs/integration-refs/delegation-registry/libraries/RegistryStorage.sol/RegistryStorage.json +10 -0
  84. package/artifacts/contracts/libs/v0.8.x/AuthLib.sol/AuthLib.json +2 -2
  85. package/artifacts/contracts/libs/v0.8.x/Bytes32Strings.sol/Bytes32Strings.json +2 -2
  86. package/artifacts/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol/DependencyRegistryStorageLib.json +2 -2
  87. package/artifacts/contracts/libs/v0.8.x/ImmutableStringArray.sol/ImmutableStringArray.json +10 -0
  88. package/artifacts/contracts/libs/v0.8.x/JsonStatic.sol/JsonStatic.json +10 -0
  89. package/artifacts/contracts/libs/v0.8.x/V3FlexLib.sol/V3FlexLib.json +9 -22
  90. package/artifacts/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol/MaxInvocationsLib.json +2 -2
  91. package/artifacts/contracts/libs/v0.8.x/minter-libs/MinPriceLib.sol/MinPriceLib.json +24 -0
  92. package/artifacts/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol/PolyptychLib.json +2 -2
  93. package/artifacts/contracts/libs/v0.8.x/minter-libs/RAMLib.sol/RAMLib.json +2 -2
  94. package/artifacts/contracts/libs/v0.8.x/minter-libs/SEALib.sol/SEALib.json +2 -2
  95. package/artifacts/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol/SettlementExpLib.json +2 -2
  96. package/artifacts/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol/SplitFundsLib.json +2 -2
  97. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +2 -2
  98. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV2.sol/MinterFilterV2.json +2 -2
  99. package/artifacts/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol/MinterDAExpHolderV5.json +2 -2
  100. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol/MinterDAExpSettlementV3.json +2 -2
  101. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV5.sol/MinterDAExpV5.json +2 -2
  102. package/artifacts/contracts/minter-suite/Minters/MinterDALinHolderV5.sol/MinterDALinHolderV5.json +2 -2
  103. package/artifacts/contracts/minter-suite/Minters/MinterDALinV5.sol/MinterDALinV5.json +2 -2
  104. package/artifacts/contracts/minter-suite/Minters/MinterMinPriceMerkleV0.sol/MinterMinPriceMerkleV0.json +664 -0
  105. package/artifacts/contracts/minter-suite/Minters/MinterMinPriceV0.sol/MinterMinPriceV0.json +387 -0
  106. package/artifacts/contracts/minter-suite/Minters/MinterRAMV0.sol/MinterRAMV0.json +2 -2
  107. package/artifacts/contracts/minter-suite/Minters/MinterSEAV1.sol/MinterSEAV1.json +2 -2
  108. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol/MinterSetPriceERC20V5.json +2 -2
  109. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol/MinterSetPriceHolderV5.json +2 -2
  110. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol/MinterSetPriceMerkleV5.json +2 -2
  111. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol/MinterSetPricePolyptychERC20V5.json +2 -2
  112. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol/MinterSetPricePolyptychV5.json +2 -2
  113. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV5.sol/MinterSetPriceV5.json +2 -2
  114. package/artifacts/contracts/minter-suite/Minters/one-off/MinterSetPriceV5_SingleCore.sol/MinterSetPriceV5_SingleCore.json +2 -2
  115. package/artifacts/contracts/minter-suite/Minters/one-off/SeaDropXArtBlocksShim.sol/SeaDropXArtBlocksShim.json +1206 -0
  116. package/artifacts/contracts/mock/BytecodeV1LibCallsMock.sol/BytecodeV1LibCallsMock.json +2 -2
  117. package/artifacts/contracts/mock/BytecodeV2LibCallsMock.sol/BytecodeV2LibCallsMock.json +2 -2
  118. package/artifacts/contracts/mock/DummySharedMinter.sol/DummySharedMinter.json +2 -2
  119. package/artifacts/contracts/mock/ERC20MockAltDecimals.sol/ERC20MockAltDecimals.json +318 -0
  120. package/artifacts/contracts/mock/ForceSendMock.sol/ForceSendMock.json +2 -2
  121. package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +2 -2
  122. package/artifacts/contracts/mock/ImmutableStringArrayMock.sol/ImmutableStringArrayMock.json +69 -0
  123. package/artifacts/contracts/mock/MockAdminACLV0_PROHIBITION.sol/MockAdminACLV0Events_PROHIBITION.json +2 -2
  124. package/artifacts/contracts/mock/MockFileStore.sol/MockFileStore.json +35 -0
  125. package/artifacts/contracts/mock/MockPMPAugmentHook.sol/MockPMPAugmentHook.json +214 -0
  126. package/artifacts/contracts/mock/MockPMPConfigureHook.sol/MockPMPConfigureHook.json +236 -0
  127. package/artifacts/contracts/mock/OriginRegisterMock.sol/OriginRegisterMock.json +2 -2
  128. package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +2 -2
  129. package/artifacts/contracts/randomizer/deprecated/PolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +2 -2
  130. package/artifacts/contracts/randomizer/deprecated/RandomizerV2.sol/BasicRandomizerV2.json +2 -2
  131. package/artifacts/contracts/randomizer/shared/SharedRandomizerV0.sol/SharedRandomizerV0.json +2 -2
  132. package/artifacts/contracts/web3call/PMPV0.sol/PMPV0.json +629 -0
  133. package/artifacts/contracts/web3call/Web3Call.sol/Web3Call.json +66 -0
  134. package/artifacts/contracts/web3call/augment-hooks/AbstractPMPAugmentHook.sol/AbstractPMPAugmentHook.json +83 -0
  135. package/artifacts/contracts/web3call/augment-hooks/InjectBaseGasFee.sol/InjectBaseGasFee.json +83 -0
  136. package/artifacts/contracts/web3call/augment-hooks/InjectChromieSquiggleFloorPrice.sol/IUniswapV2Pair.json +60 -0
  137. package/artifacts/contracts/web3call/augment-hooks/InjectChromieSquiggleFloorPrice.sol/InjectChromieSquiggleFloorPrice.json +107 -0
  138. package/artifacts/contracts/web3call/augment-hooks/InjectIsNounsDaoMember.sol/InjectIsNounsDaoMember.json +96 -0
  139. package/artifacts/contracts/web3call/augment-hooks/InjectIsProjectFullyMinted.sol/InjectIsProjectFullyMinted.json +83 -0
  140. package/artifacts/contracts/web3call/augment-hooks/InjectPolyptychTokenHash.sol/InjectPolyptychTokenHash.json +141 -0
  141. package/artifacts/contracts/web3call/augment-hooks/InjectTokenHashSeed.sol/InjectTokenHashSeed.json +99 -0
  142. package/artifacts/contracts/web3call/augment-hooks/InjectTokenOwner.sol/InjectTokenOwner.json +99 -0
  143. package/artifacts/contracts/web3call/augment-hooks/InjectTokenOwnerEthBalance.sol/InjectTokenOwnerEthBalance.json +83 -0
  144. package/artifacts/contracts/web3call/augment-hooks/InjectUSDCTotalSupply.sol/InjectUSDCTotalSupply.json +107 -0
  145. package/artifacts/contracts/web3call/configure-hooks/abstractPMPConfigureHook.sol/AbstractPMPConfigureHook.json +80 -0
  146. package/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2.sol +103 -0
  147. package/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2_Web3Call.sol +128 -0
  148. package/contracts/BytecodeStorageReaders/UniversalBytecodeStorageReader.sol +70 -0
  149. package/contracts/BytecodeStorageV2Writer.sol +69 -0
  150. package/contracts/DependencyRegistryV0.sol +296 -88
  151. package/contracts/GenArt721CoreV3_Curated.sol +133 -0
  152. package/contracts/OwnedCreate2FactoryV0.sol +173 -0
  153. package/contracts/engine/V3/EngineFactoryV0.sol +10 -2
  154. package/contracts/engine/V3/GenArt721CoreV3_Engine.sol +139 -70
  155. package/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol +148 -72
  156. package/contracts/generator/AddressChunks.sol +106 -0
  157. package/contracts/generator/GenArt721GeneratorV0.sol +1163 -0
  158. package/contracts/generator/scripty-support/Scripty.sol +5 -0
  159. package/contracts/interfaces/v0.8.x/IBytecodeStorageReader.sol +34 -36
  160. package/contracts/interfaces/v0.8.x/IBytecodeStorageReaderV2.sol +5 -3
  161. package/contracts/interfaces/v0.8.x/IBytecodeStorageReader_Base.sol +20 -0
  162. package/contracts/interfaces/v0.8.x/ICoreRegistryV1.sol +5 -0
  163. package/contracts/interfaces/v0.8.x/IDelegateRegistry.sol +318 -0
  164. package/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol +96 -0
  165. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol +13 -2
  166. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol +3 -1
  167. package/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV0.sol +22 -0
  168. package/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV1.sol +23 -0
  169. package/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV0.sol +11 -0
  170. package/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV1.sol +9 -0
  171. package/contracts/interfaces/v0.8.x/IGenArt721GeneratorV0.sol +14 -0
  172. package/contracts/interfaces/v0.8.x/IOwnedCreate2FactoryV0.sol +40 -0
  173. package/contracts/interfaces/v0.8.x/IPMPAugmentHook.sol +31 -0
  174. package/contracts/interfaces/v0.8.x/IPMPConfigureHook.sol +25 -0
  175. package/contracts/interfaces/v0.8.x/IPMPV0.sol +224 -0
  176. package/contracts/interfaces/v0.8.x/ISeaDropShimForContract.sol +19 -0
  177. package/contracts/interfaces/v0.8.x/ISharedMinterMinPriceV0.sol +22 -0
  178. package/contracts/interfaces/v0.8.x/ISharedMinterRequired.sol +10 -4
  179. package/contracts/interfaces/v0.8.x/IUniversalBytecodeStorageReader.sol +33 -0
  180. package/contracts/interfaces/v0.8.x/IWeb3Call.sol +28 -0
  181. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ERC721SeaDropStructsErrorsAndEvents.sol +58 -0
  182. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/INonFungibleSeaDropToken.sol +186 -0
  183. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDrop.sol +337 -0
  184. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDropTokenContractMetadata.sol +152 -0
  185. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropErrorsAndEvents.sol +320 -0
  186. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropStructs.sol +146 -0
  187. package/contracts/libs/integration-refs/delegation-registry/DelegateRegistry.sol +753 -0
  188. package/contracts/libs/integration-refs/delegation-registry/libraries/RegistryHashes.sol +359 -0
  189. package/contracts/libs/integration-refs/delegation-registry/libraries/RegistryOps.sol +31 -0
  190. package/contracts/libs/integration-refs/delegation-registry/libraries/RegistryStorage.sol +87 -0
  191. package/contracts/libs/v0.8.x/Bytes32Strings.sol +20 -0
  192. package/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol +14 -3
  193. package/contracts/libs/v0.8.x/ImmutableStringArray.sol +289 -0
  194. package/contracts/libs/v0.8.x/JsonStatic.sol +373 -0
  195. package/contracts/libs/v0.8.x/V3FlexLib.sol +16 -4
  196. package/contracts/libs/v0.8.x/minter-libs/MinPriceLib.sol +64 -0
  197. package/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol +107 -0
  198. package/contracts/minter-suite/Minters/MinterMinPriceMerkleV0.sol +765 -0
  199. package/contracts/minter-suite/Minters/MinterMinPriceV0.sol +462 -0
  200. package/contracts/minter-suite/Minters/one-off/SeaDropXArtBlocksShim.sol +869 -0
  201. package/contracts/mock/ERC20MockAltDecimals.sol +31 -0
  202. package/contracts/mock/ImmutableStringArrayMock.sol +47 -0
  203. package/contracts/mock/MockFileStore.sol +22 -0
  204. package/contracts/mock/MockPMPAugmentHook.sol +170 -0
  205. package/contracts/mock/MockPMPConfigureHook.sol +78 -0
  206. package/contracts/web3call/PMPV0.sol +1125 -0
  207. package/contracts/web3call/Web3Call.sol +25 -0
  208. package/contracts/web3call/augment-hooks/AbstractPMPAugmentHook.sol +46 -0
  209. package/contracts/web3call/augment-hooks/InjectBaseGasFee.sol +57 -0
  210. package/contracts/web3call/augment-hooks/InjectChromieSquiggleFloorPrice.sol +103 -0
  211. package/contracts/web3call/augment-hooks/InjectIsNounsDaoMember.sol +66 -0
  212. package/contracts/web3call/augment-hooks/InjectIsProjectFullyMinted.sol +73 -0
  213. package/contracts/web3call/augment-hooks/InjectPolyptychTokenHash.sol +88 -0
  214. package/contracts/web3call/augment-hooks/InjectTokenHashSeed.sol +62 -0
  215. package/contracts/web3call/augment-hooks/InjectTokenOwner.sol +60 -0
  216. package/contracts/web3call/augment-hooks/InjectTokenOwnerEthBalance.sol +61 -0
  217. package/contracts/web3call/augment-hooks/InjectUSDCTotalSupply.sol +69 -0
  218. package/contracts/web3call/configure-hooks/abstractPMPConfigureHook.sol +41 -0
  219. package/package.json +23 -21
@@ -0,0 +1,846 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "DelegateRegistry",
4
+ "sourceName": "contracts/libs/integration-refs/delegation-registry/DelegateRegistry.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "MulticallFailed",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "anonymous": false,
13
+ "inputs": [
14
+ {
15
+ "indexed": true,
16
+ "internalType": "address",
17
+ "name": "from",
18
+ "type": "address"
19
+ },
20
+ {
21
+ "indexed": true,
22
+ "internalType": "address",
23
+ "name": "to",
24
+ "type": "address"
25
+ },
26
+ {
27
+ "indexed": false,
28
+ "internalType": "bytes32",
29
+ "name": "rights",
30
+ "type": "bytes32"
31
+ },
32
+ {
33
+ "indexed": false,
34
+ "internalType": "bool",
35
+ "name": "enable",
36
+ "type": "bool"
37
+ }
38
+ ],
39
+ "name": "DelegateAll",
40
+ "type": "event"
41
+ },
42
+ {
43
+ "anonymous": false,
44
+ "inputs": [
45
+ {
46
+ "indexed": true,
47
+ "internalType": "address",
48
+ "name": "from",
49
+ "type": "address"
50
+ },
51
+ {
52
+ "indexed": true,
53
+ "internalType": "address",
54
+ "name": "to",
55
+ "type": "address"
56
+ },
57
+ {
58
+ "indexed": true,
59
+ "internalType": "address",
60
+ "name": "contract_",
61
+ "type": "address"
62
+ },
63
+ {
64
+ "indexed": false,
65
+ "internalType": "bytes32",
66
+ "name": "rights",
67
+ "type": "bytes32"
68
+ },
69
+ {
70
+ "indexed": false,
71
+ "internalType": "bool",
72
+ "name": "enable",
73
+ "type": "bool"
74
+ }
75
+ ],
76
+ "name": "DelegateContract",
77
+ "type": "event"
78
+ },
79
+ {
80
+ "anonymous": false,
81
+ "inputs": [
82
+ {
83
+ "indexed": true,
84
+ "internalType": "address",
85
+ "name": "from",
86
+ "type": "address"
87
+ },
88
+ {
89
+ "indexed": true,
90
+ "internalType": "address",
91
+ "name": "to",
92
+ "type": "address"
93
+ },
94
+ {
95
+ "indexed": true,
96
+ "internalType": "address",
97
+ "name": "contract_",
98
+ "type": "address"
99
+ },
100
+ {
101
+ "indexed": false,
102
+ "internalType": "uint256",
103
+ "name": "tokenId",
104
+ "type": "uint256"
105
+ },
106
+ {
107
+ "indexed": false,
108
+ "internalType": "bytes32",
109
+ "name": "rights",
110
+ "type": "bytes32"
111
+ },
112
+ {
113
+ "indexed": false,
114
+ "internalType": "uint256",
115
+ "name": "amount",
116
+ "type": "uint256"
117
+ }
118
+ ],
119
+ "name": "DelegateERC1155",
120
+ "type": "event"
121
+ },
122
+ {
123
+ "anonymous": false,
124
+ "inputs": [
125
+ {
126
+ "indexed": true,
127
+ "internalType": "address",
128
+ "name": "from",
129
+ "type": "address"
130
+ },
131
+ {
132
+ "indexed": true,
133
+ "internalType": "address",
134
+ "name": "to",
135
+ "type": "address"
136
+ },
137
+ {
138
+ "indexed": true,
139
+ "internalType": "address",
140
+ "name": "contract_",
141
+ "type": "address"
142
+ },
143
+ {
144
+ "indexed": false,
145
+ "internalType": "bytes32",
146
+ "name": "rights",
147
+ "type": "bytes32"
148
+ },
149
+ {
150
+ "indexed": false,
151
+ "internalType": "uint256",
152
+ "name": "amount",
153
+ "type": "uint256"
154
+ }
155
+ ],
156
+ "name": "DelegateERC20",
157
+ "type": "event"
158
+ },
159
+ {
160
+ "anonymous": false,
161
+ "inputs": [
162
+ {
163
+ "indexed": true,
164
+ "internalType": "address",
165
+ "name": "from",
166
+ "type": "address"
167
+ },
168
+ {
169
+ "indexed": true,
170
+ "internalType": "address",
171
+ "name": "to",
172
+ "type": "address"
173
+ },
174
+ {
175
+ "indexed": true,
176
+ "internalType": "address",
177
+ "name": "contract_",
178
+ "type": "address"
179
+ },
180
+ {
181
+ "indexed": false,
182
+ "internalType": "uint256",
183
+ "name": "tokenId",
184
+ "type": "uint256"
185
+ },
186
+ {
187
+ "indexed": false,
188
+ "internalType": "bytes32",
189
+ "name": "rights",
190
+ "type": "bytes32"
191
+ },
192
+ {
193
+ "indexed": false,
194
+ "internalType": "bool",
195
+ "name": "enable",
196
+ "type": "bool"
197
+ }
198
+ ],
199
+ "name": "DelegateERC721",
200
+ "type": "event"
201
+ },
202
+ {
203
+ "inputs": [
204
+ {
205
+ "internalType": "address",
206
+ "name": "to",
207
+ "type": "address"
208
+ },
209
+ {
210
+ "internalType": "address",
211
+ "name": "from",
212
+ "type": "address"
213
+ },
214
+ {
215
+ "internalType": "bytes32",
216
+ "name": "rights",
217
+ "type": "bytes32"
218
+ }
219
+ ],
220
+ "name": "checkDelegateForAll",
221
+ "outputs": [
222
+ {
223
+ "internalType": "bool",
224
+ "name": "valid",
225
+ "type": "bool"
226
+ }
227
+ ],
228
+ "stateMutability": "view",
229
+ "type": "function"
230
+ },
231
+ {
232
+ "inputs": [
233
+ {
234
+ "internalType": "address",
235
+ "name": "to",
236
+ "type": "address"
237
+ },
238
+ {
239
+ "internalType": "address",
240
+ "name": "from",
241
+ "type": "address"
242
+ },
243
+ {
244
+ "internalType": "address",
245
+ "name": "contract_",
246
+ "type": "address"
247
+ },
248
+ {
249
+ "internalType": "bytes32",
250
+ "name": "rights",
251
+ "type": "bytes32"
252
+ }
253
+ ],
254
+ "name": "checkDelegateForContract",
255
+ "outputs": [
256
+ {
257
+ "internalType": "bool",
258
+ "name": "valid",
259
+ "type": "bool"
260
+ }
261
+ ],
262
+ "stateMutability": "view",
263
+ "type": "function"
264
+ },
265
+ {
266
+ "inputs": [
267
+ {
268
+ "internalType": "address",
269
+ "name": "to",
270
+ "type": "address"
271
+ },
272
+ {
273
+ "internalType": "address",
274
+ "name": "from",
275
+ "type": "address"
276
+ },
277
+ {
278
+ "internalType": "address",
279
+ "name": "contract_",
280
+ "type": "address"
281
+ },
282
+ {
283
+ "internalType": "uint256",
284
+ "name": "tokenId",
285
+ "type": "uint256"
286
+ },
287
+ {
288
+ "internalType": "bytes32",
289
+ "name": "rights",
290
+ "type": "bytes32"
291
+ }
292
+ ],
293
+ "name": "checkDelegateForERC1155",
294
+ "outputs": [
295
+ {
296
+ "internalType": "uint256",
297
+ "name": "amount",
298
+ "type": "uint256"
299
+ }
300
+ ],
301
+ "stateMutability": "view",
302
+ "type": "function"
303
+ },
304
+ {
305
+ "inputs": [
306
+ {
307
+ "internalType": "address",
308
+ "name": "to",
309
+ "type": "address"
310
+ },
311
+ {
312
+ "internalType": "address",
313
+ "name": "from",
314
+ "type": "address"
315
+ },
316
+ {
317
+ "internalType": "address",
318
+ "name": "contract_",
319
+ "type": "address"
320
+ },
321
+ {
322
+ "internalType": "bytes32",
323
+ "name": "rights",
324
+ "type": "bytes32"
325
+ }
326
+ ],
327
+ "name": "checkDelegateForERC20",
328
+ "outputs": [
329
+ {
330
+ "internalType": "uint256",
331
+ "name": "amount",
332
+ "type": "uint256"
333
+ }
334
+ ],
335
+ "stateMutability": "view",
336
+ "type": "function"
337
+ },
338
+ {
339
+ "inputs": [
340
+ {
341
+ "internalType": "address",
342
+ "name": "to",
343
+ "type": "address"
344
+ },
345
+ {
346
+ "internalType": "address",
347
+ "name": "from",
348
+ "type": "address"
349
+ },
350
+ {
351
+ "internalType": "address",
352
+ "name": "contract_",
353
+ "type": "address"
354
+ },
355
+ {
356
+ "internalType": "uint256",
357
+ "name": "tokenId",
358
+ "type": "uint256"
359
+ },
360
+ {
361
+ "internalType": "bytes32",
362
+ "name": "rights",
363
+ "type": "bytes32"
364
+ }
365
+ ],
366
+ "name": "checkDelegateForERC721",
367
+ "outputs": [
368
+ {
369
+ "internalType": "bool",
370
+ "name": "valid",
371
+ "type": "bool"
372
+ }
373
+ ],
374
+ "stateMutability": "view",
375
+ "type": "function"
376
+ },
377
+ {
378
+ "inputs": [
379
+ {
380
+ "internalType": "address",
381
+ "name": "to",
382
+ "type": "address"
383
+ },
384
+ {
385
+ "internalType": "bytes32",
386
+ "name": "rights",
387
+ "type": "bytes32"
388
+ },
389
+ {
390
+ "internalType": "bool",
391
+ "name": "enable",
392
+ "type": "bool"
393
+ }
394
+ ],
395
+ "name": "delegateAll",
396
+ "outputs": [
397
+ {
398
+ "internalType": "bytes32",
399
+ "name": "hash",
400
+ "type": "bytes32"
401
+ }
402
+ ],
403
+ "stateMutability": "payable",
404
+ "type": "function"
405
+ },
406
+ {
407
+ "inputs": [
408
+ {
409
+ "internalType": "address",
410
+ "name": "to",
411
+ "type": "address"
412
+ },
413
+ {
414
+ "internalType": "address",
415
+ "name": "contract_",
416
+ "type": "address"
417
+ },
418
+ {
419
+ "internalType": "bytes32",
420
+ "name": "rights",
421
+ "type": "bytes32"
422
+ },
423
+ {
424
+ "internalType": "bool",
425
+ "name": "enable",
426
+ "type": "bool"
427
+ }
428
+ ],
429
+ "name": "delegateContract",
430
+ "outputs": [
431
+ {
432
+ "internalType": "bytes32",
433
+ "name": "hash",
434
+ "type": "bytes32"
435
+ }
436
+ ],
437
+ "stateMutability": "payable",
438
+ "type": "function"
439
+ },
440
+ {
441
+ "inputs": [
442
+ {
443
+ "internalType": "address",
444
+ "name": "to",
445
+ "type": "address"
446
+ },
447
+ {
448
+ "internalType": "address",
449
+ "name": "contract_",
450
+ "type": "address"
451
+ },
452
+ {
453
+ "internalType": "uint256",
454
+ "name": "tokenId",
455
+ "type": "uint256"
456
+ },
457
+ {
458
+ "internalType": "bytes32",
459
+ "name": "rights",
460
+ "type": "bytes32"
461
+ },
462
+ {
463
+ "internalType": "uint256",
464
+ "name": "amount",
465
+ "type": "uint256"
466
+ }
467
+ ],
468
+ "name": "delegateERC1155",
469
+ "outputs": [
470
+ {
471
+ "internalType": "bytes32",
472
+ "name": "hash",
473
+ "type": "bytes32"
474
+ }
475
+ ],
476
+ "stateMutability": "payable",
477
+ "type": "function"
478
+ },
479
+ {
480
+ "inputs": [
481
+ {
482
+ "internalType": "address",
483
+ "name": "to",
484
+ "type": "address"
485
+ },
486
+ {
487
+ "internalType": "address",
488
+ "name": "contract_",
489
+ "type": "address"
490
+ },
491
+ {
492
+ "internalType": "bytes32",
493
+ "name": "rights",
494
+ "type": "bytes32"
495
+ },
496
+ {
497
+ "internalType": "uint256",
498
+ "name": "amount",
499
+ "type": "uint256"
500
+ }
501
+ ],
502
+ "name": "delegateERC20",
503
+ "outputs": [
504
+ {
505
+ "internalType": "bytes32",
506
+ "name": "hash",
507
+ "type": "bytes32"
508
+ }
509
+ ],
510
+ "stateMutability": "payable",
511
+ "type": "function"
512
+ },
513
+ {
514
+ "inputs": [
515
+ {
516
+ "internalType": "address",
517
+ "name": "to",
518
+ "type": "address"
519
+ },
520
+ {
521
+ "internalType": "address",
522
+ "name": "contract_",
523
+ "type": "address"
524
+ },
525
+ {
526
+ "internalType": "uint256",
527
+ "name": "tokenId",
528
+ "type": "uint256"
529
+ },
530
+ {
531
+ "internalType": "bytes32",
532
+ "name": "rights",
533
+ "type": "bytes32"
534
+ },
535
+ {
536
+ "internalType": "bool",
537
+ "name": "enable",
538
+ "type": "bool"
539
+ }
540
+ ],
541
+ "name": "delegateERC721",
542
+ "outputs": [
543
+ {
544
+ "internalType": "bytes32",
545
+ "name": "hash",
546
+ "type": "bytes32"
547
+ }
548
+ ],
549
+ "stateMutability": "payable",
550
+ "type": "function"
551
+ },
552
+ {
553
+ "inputs": [
554
+ {
555
+ "internalType": "bytes32[]",
556
+ "name": "hashes",
557
+ "type": "bytes32[]"
558
+ }
559
+ ],
560
+ "name": "getDelegationsFromHashes",
561
+ "outputs": [
562
+ {
563
+ "components": [
564
+ {
565
+ "internalType": "enum IDelegateRegistry.DelegationType",
566
+ "name": "type_",
567
+ "type": "uint8"
568
+ },
569
+ {
570
+ "internalType": "address",
571
+ "name": "to",
572
+ "type": "address"
573
+ },
574
+ {
575
+ "internalType": "address",
576
+ "name": "from",
577
+ "type": "address"
578
+ },
579
+ {
580
+ "internalType": "bytes32",
581
+ "name": "rights",
582
+ "type": "bytes32"
583
+ },
584
+ {
585
+ "internalType": "address",
586
+ "name": "contract_",
587
+ "type": "address"
588
+ },
589
+ {
590
+ "internalType": "uint256",
591
+ "name": "tokenId",
592
+ "type": "uint256"
593
+ },
594
+ {
595
+ "internalType": "uint256",
596
+ "name": "amount",
597
+ "type": "uint256"
598
+ }
599
+ ],
600
+ "internalType": "struct IDelegateRegistry.Delegation[]",
601
+ "name": "delegations_",
602
+ "type": "tuple[]"
603
+ }
604
+ ],
605
+ "stateMutability": "view",
606
+ "type": "function"
607
+ },
608
+ {
609
+ "inputs": [
610
+ {
611
+ "internalType": "address",
612
+ "name": "to",
613
+ "type": "address"
614
+ }
615
+ ],
616
+ "name": "getIncomingDelegationHashes",
617
+ "outputs": [
618
+ {
619
+ "internalType": "bytes32[]",
620
+ "name": "delegationHashes",
621
+ "type": "bytes32[]"
622
+ }
623
+ ],
624
+ "stateMutability": "view",
625
+ "type": "function"
626
+ },
627
+ {
628
+ "inputs": [
629
+ {
630
+ "internalType": "address",
631
+ "name": "to",
632
+ "type": "address"
633
+ }
634
+ ],
635
+ "name": "getIncomingDelegations",
636
+ "outputs": [
637
+ {
638
+ "components": [
639
+ {
640
+ "internalType": "enum IDelegateRegistry.DelegationType",
641
+ "name": "type_",
642
+ "type": "uint8"
643
+ },
644
+ {
645
+ "internalType": "address",
646
+ "name": "to",
647
+ "type": "address"
648
+ },
649
+ {
650
+ "internalType": "address",
651
+ "name": "from",
652
+ "type": "address"
653
+ },
654
+ {
655
+ "internalType": "bytes32",
656
+ "name": "rights",
657
+ "type": "bytes32"
658
+ },
659
+ {
660
+ "internalType": "address",
661
+ "name": "contract_",
662
+ "type": "address"
663
+ },
664
+ {
665
+ "internalType": "uint256",
666
+ "name": "tokenId",
667
+ "type": "uint256"
668
+ },
669
+ {
670
+ "internalType": "uint256",
671
+ "name": "amount",
672
+ "type": "uint256"
673
+ }
674
+ ],
675
+ "internalType": "struct IDelegateRegistry.Delegation[]",
676
+ "name": "delegations_",
677
+ "type": "tuple[]"
678
+ }
679
+ ],
680
+ "stateMutability": "view",
681
+ "type": "function"
682
+ },
683
+ {
684
+ "inputs": [
685
+ {
686
+ "internalType": "address",
687
+ "name": "from",
688
+ "type": "address"
689
+ }
690
+ ],
691
+ "name": "getOutgoingDelegationHashes",
692
+ "outputs": [
693
+ {
694
+ "internalType": "bytes32[]",
695
+ "name": "delegationHashes",
696
+ "type": "bytes32[]"
697
+ }
698
+ ],
699
+ "stateMutability": "view",
700
+ "type": "function"
701
+ },
702
+ {
703
+ "inputs": [
704
+ {
705
+ "internalType": "address",
706
+ "name": "from",
707
+ "type": "address"
708
+ }
709
+ ],
710
+ "name": "getOutgoingDelegations",
711
+ "outputs": [
712
+ {
713
+ "components": [
714
+ {
715
+ "internalType": "enum IDelegateRegistry.DelegationType",
716
+ "name": "type_",
717
+ "type": "uint8"
718
+ },
719
+ {
720
+ "internalType": "address",
721
+ "name": "to",
722
+ "type": "address"
723
+ },
724
+ {
725
+ "internalType": "address",
726
+ "name": "from",
727
+ "type": "address"
728
+ },
729
+ {
730
+ "internalType": "bytes32",
731
+ "name": "rights",
732
+ "type": "bytes32"
733
+ },
734
+ {
735
+ "internalType": "address",
736
+ "name": "contract_",
737
+ "type": "address"
738
+ },
739
+ {
740
+ "internalType": "uint256",
741
+ "name": "tokenId",
742
+ "type": "uint256"
743
+ },
744
+ {
745
+ "internalType": "uint256",
746
+ "name": "amount",
747
+ "type": "uint256"
748
+ }
749
+ ],
750
+ "internalType": "struct IDelegateRegistry.Delegation[]",
751
+ "name": "delegations_",
752
+ "type": "tuple[]"
753
+ }
754
+ ],
755
+ "stateMutability": "view",
756
+ "type": "function"
757
+ },
758
+ {
759
+ "inputs": [
760
+ {
761
+ "internalType": "bytes[]",
762
+ "name": "data",
763
+ "type": "bytes[]"
764
+ }
765
+ ],
766
+ "name": "multicall",
767
+ "outputs": [
768
+ {
769
+ "internalType": "bytes[]",
770
+ "name": "results",
771
+ "type": "bytes[]"
772
+ }
773
+ ],
774
+ "stateMutability": "payable",
775
+ "type": "function"
776
+ },
777
+ {
778
+ "inputs": [
779
+ {
780
+ "internalType": "bytes32",
781
+ "name": "location",
782
+ "type": "bytes32"
783
+ }
784
+ ],
785
+ "name": "readSlot",
786
+ "outputs": [
787
+ {
788
+ "internalType": "bytes32",
789
+ "name": "contents",
790
+ "type": "bytes32"
791
+ }
792
+ ],
793
+ "stateMutability": "view",
794
+ "type": "function"
795
+ },
796
+ {
797
+ "inputs": [
798
+ {
799
+ "internalType": "bytes32[]",
800
+ "name": "locations",
801
+ "type": "bytes32[]"
802
+ }
803
+ ],
804
+ "name": "readSlots",
805
+ "outputs": [
806
+ {
807
+ "internalType": "bytes32[]",
808
+ "name": "contents",
809
+ "type": "bytes32[]"
810
+ }
811
+ ],
812
+ "stateMutability": "view",
813
+ "type": "function"
814
+ },
815
+ {
816
+ "inputs": [
817
+ {
818
+ "internalType": "bytes4",
819
+ "name": "interfaceId",
820
+ "type": "bytes4"
821
+ }
822
+ ],
823
+ "name": "supportsInterface",
824
+ "outputs": [
825
+ {
826
+ "internalType": "bool",
827
+ "name": "",
828
+ "type": "bool"
829
+ }
830
+ ],
831
+ "stateMutability": "pure",
832
+ "type": "function"
833
+ },
834
+ {
835
+ "inputs": [],
836
+ "name": "sweep",
837
+ "outputs": [],
838
+ "stateMutability": "nonpayable",
839
+ "type": "function"
840
+ }
841
+ ],
842
+ "bytecode": "0x608060405234801561001057600080fd5b50611c32806100206000396000f3fe6080604052600436106100ee5760003560e01c80623c2ba6146100f357806301a920a01461011957806301ffc9a714610146578063063182a51461017657806330ff31401461019657806335faa416146101a957806342f87c25146101c05780634705ed38146101ed57806351525e9a1461020d57806361451a301461022d5780638988eea91461024d578063ab7646831461026d578063ac9650d814610280578063b18e2bbb146102a0578063b8705875146102b3578063b9f36874146102d3578063ba63c817146102f3578063d90e73ab14610313578063e839bd5314610326578063e8e834a914610346575b600080fd5b610106610101366004611679565b610365565b6040519081526020015b60405180910390f35b34801561012557600080fd5b506101396101343660046116bb565b6104ae565b60405161011091906116dd565b34801561015257600080fd5b50610166610161366004611721565b6104d8565b6040519015158152602001610110565b34801561018257600080fd5b506101396101913660046116bb565b610501565b6101066101a436600461175b565b610525565b3480156101b557600080fd5b506101be610626565b005b3480156101cc57600080fd5b506101e06101db3660046116bb565b610644565b60405161011091906117ba565b3480156101f957600080fd5b506101e06102083660046118c1565b610668565b34801561021957600080fd5b506101e06102283660046116bb565b610848565b34801561023957600080fd5b506101396102483660046118c1565b61086c565b34801561025957600080fd5b50610166610268366004611902565b610910565b61010661027b36600461194d565b610988565b61029361028e3660046118c1565b610aed565b604051610110919061199a565b6101066102ae366004611a2c565b610c0a565b3480156102bf57600080fd5b506101066102ce366004611a83565b610d28565b3480156102df57600080fd5b506101666102ee366004611a83565b610df6565b3480156102ff57600080fd5b5061010661030e366004611902565b610e86565b610106610321366004611ad8565b610f1d565b34801561033257600080fd5b50610166610341366004611b25565b61101d565b34801561035257600080fd5b50610106610361366004611b61565b5490565b604051603c810184905260288101859052336014820152828152605c902060081b60041760006103948261105b565b905060006103a18261106c565b90508315610435576001600160a01b0381166103f1576103c2338885611079565b6103ce823389896110c4565b6103da82600486910155565b84156103ec576103ec82600287910155565b610458565b6000196001600160a01b038216016104195761040d82336110f1565b6103ec82600486910155565b336001600160a01b038216036103ec576103ec82600486910155565b336001600160a01b03821603610458576104508260016110f1565b600060048301555b60408051868152602081018690526001600160a01b0380891692908a169133917f6ebd000dfc4dc9df04f723f827bae7694230795e8f22ed4af438e074cc982d1891015b60405180910390a45050949350505050565b6001600160a01b03811660009081526001602052604090206060906104d29061110e565b92915050565b60006301ffc9a760e01b6001600160e01b03198316908114632fb45e2d60e11b909114176104d2565b6001600160a01b03811660009081526002602052604090206060906104d29061110e565b604051602881018490523360148201528281526048902060081b600117600061054d8261105b565b9050600061055a8261106c565b905083156105bb576001600160a01b03811661059f5761057b338785611079565b61058882338860006110c4565b841561059a5761059a82600287910155565b6105d6565b6000196001600160a01b0382160161059a5761059a82336110f1565b336001600160a01b038216036105d6576105d68260016110f1565b6040805186815285151560208201526001600160a01b0388169133917fda3ef6410e30373a9137f83f9781a8129962b6882532b7c229de2e39de423227910160405180910390a350509392505050565b6000806000804770de1e80ea5a234fb5488fee2584251bc7e85af150565b6001600160a01b03811660009081526002602052604090206060906104d29061126a565b6060816001600160401b0381111561068257610682611b7a565b6040519080825280602002602001820160405280156106bb57816020015b6106a861161f565b8152602001906001900390816106a05790505b50905060005b828110156108415760006106ec8585848181106106e0576106e0611b90565b9050602002013561105b565b905060006106f98261106c565b90506107048161147b565b15610768576040805160e08101909152806000815260006020820181905260408201819052606082018190526080820181905260a0820181905260c090910152845185908590811061075857610758611b90565b6020026020010181905250610837565b60008061077484611494565b92509250506040518060e001604052806107a68a8a8981811061079957610799611b90565b9050602002013560ff1690565b60058111156107b7576107b7611797565b8152602001836001600160a01b03168152602001846001600160a01b031681526020016107e5866002015490565b8152602001826001600160a01b03168152602001610804866003015490565b8152602001610814866004015490565b81525086868151811061082957610829611b90565b602002602001018190525050505b50506001016106c1565b5092915050565b6001600160a01b03811660009081526001602052604090206060906104d29061126a565b606081806001600160401b0381111561088757610887611b7a565b6040519080825280602002602001820160405280156108b0578160200160208202803683370190505b50915060008060005b83811015610906578686828181106108d3576108d3611b90565b90506020020135925082549150818582815181106108f3576108f3611b90565b60209081029190910101526001016108b9565b5050505092915050565b600061091b8461147b565b61097c5761093461092e856000886114cb565b856114fa565b8061094a575061094a61092e8560008887611521565b905080151582151761097c5761096461092e8584886114cb565b80610979575061097961092e85848887611521565b90505b80151560005260206000f35b604051605c8101849052603c810185905260288101869052336014820152828152607c902060081b60051760006109be8261105b565b905060006109cb8261106c565b90508315610a6b576001600160a01b038116610a27576109ec338985611079565b6109f882338a8a6110c4565b610a0482600388910155565b610a1082600486910155565b8415610a2257610a2282600287910155565b610a8e565b6000196001600160a01b03821601610a4f57610a4382336110f1565b610a2282600486910155565b336001600160a01b03821603610a2257610a2282600486910155565b336001600160a01b03821603610a8e57610a868260016110f1565b600060048301555b60408051878152602081018790529081018590526001600160a01b0380891691908a169033907f27ab1adc9bca76301ed7a691320766dfa4b4b1aa32c9e05cf789611be7f8c75f906060015b60405180910390a4505095945050505050565b6060816001600160401b03811115610b0757610b07611b7a565b604051908082528060200260200182016040528015610b3a57816020015b6060815260200190600190039081610b255790505b5090506000805b83811015610c025730858583818110610b5c57610b5c611b90565b9050602002810190610b6e9190611ba6565b604051610b7c929190611bec565b600060405180830381855af49150503d8060008114610bb7576040519150601f19603f3d011682016040523d82523d6000602084013e610bbc565b606091505b50848381518110610bcf57610bcf611b90565b6020908102919091010152915081610bfa576040516309ad446560e31b815260040160405180910390fd5b600101610b41565b505092915050565b604051605c8101849052603c810185905260288101869052336014820152828152607c902060081b6003176000610c408261105b565b90506000610c4d8261106c565b90508315610cb9576001600160a01b038116610c9d57610c6e338985611079565b610c7a82338a8a6110c4565b610c8682600388910155565b8415610c9857610c9882600287910155565b610cd4565b6000196001600160a01b03821601610c9857610c9882336110f1565b336001600160a01b03821603610cd457610cd48260016110f1565b6040805187815260208101879052851515918101919091526001600160a01b0380891691908a169033907f15e7a1bdcd507dd632d797d38e60cc5a9c0749b9a63097a215c4d006126825c690606001610ada565b6000610d338561147b565b610dec57610d4c610d46866000896114cb565b866114fa565b80610d625750610d62610d468660008988611521565b610d8357610d7e610d7786600089878961155d565b6004015490565b610d87565b6000195b90506000198114821517610dec576000610dab610da587858a6114cb565b876114fa565b80610dc05750610dc0610da587858a89611521565b610dd957610dd4610d7787858a888a61155d565b610ddd565b6000195b90508181108282180281189150505b8060005260206000f35b6000610e018561147b565b61097c57610e14610d46866000896114cb565b80610e2a5750610e2a610d468660008988611521565b80610e415750610e41610d468660008987896115a0565b905080151582151761097c57610e5b610d468684896114cb565b80610e705750610e70610d4686848988611521565b806109795750610979610d4686848987896115a0565b6000610e918461147b565b610dec57610ea461092e856000886114cb565b80610eba5750610eba61092e8560008887611521565b610ed357610ece610d7785600088876115e3565b610ed7565b6000195b90506000198114821517610dec576000610ef5610d468685896114cb565b80610f0a5750610f0a610d4686858988611521565b610dd957610dd4610d77868589886115e3565b604051603c810184905260288101859052336014820152828152605c902060081b6002176000610f4c8261105b565b90506000610f598261106c565b90508315610fb9576001600160a01b038116610f9d57610f7a338885611079565b610f86823389896110c4565b8415610f9857610f9882600287910155565b610fd4565b6000196001600160a01b03821601610f9857610f9882336110f1565b336001600160a01b03821603610fd457610fd48260016110f1565b6040805186815285151560208201526001600160a01b0380891692908a169133917f021be15e24de4afc43cfb5d0ba95ca38e0783571e05c12bbe6aece8842ae82df910161049c565b60006110288361147b565b61097c5761104161103b846000876114cb565b846114fa565b905080151582151761097c5761097961103b8484876114cb565b600090815260208190526040902090565b546001600160a01b031690565b6001600160a01b039283166000908152600160208181526040808420805480850182559085528285200185905594909516825260028552928120805493840181558152929092200155565b600160a01b600160e01b03604082901b166001600160a01b0393841617845560a01b911617600190910155565b81546001600160a01b0319166001600160a01b0391909116179055565b80546060906000908180826001600160401b0381111561113057611130611b7a565b604051908082528060200260200182016040528015611159578160200160208202803683370190505b50905060005b838110156111d15786818154811061117957611179611b90565b9060005260206000200154925061119f61119a6111958561105b565b61106c565b61147b565b6111c957828286806001019750815181106111bc576111bc611b90565b6020026020010181815250505b60010161115f565b50836001600160401b038111156111ea576111ea611b7a565b604051908082528060200260200182016040528015611213578160200160208202803683370190505b50945060005b848110156112605781818151811061123357611233611b90565b602002602001015186828151811061124d5761124d611b90565b6020908102919091010152600101611219565b5050505050919050565b80546060906000908180826001600160401b0381111561128c5761128c611b7a565b6040519080825280602002602001820160405280156112b5578160200160208202803683370190505b50905060005b83811015611323578681815481106112d5576112d5611b90565b906000526020600020015492506112f161119a6111958561105b565b61131b578282868060010197508151811061130e5761130e611b90565b6020026020010181815250505b6001016112bb565b50836001600160401b0381111561133c5761133c611b7a565b60405190808252806020026020018201604052801561137557816020015b61136261161f565b81526020019060019003908161135a5790505b5094506000805b858110156114705782818151811061139657611396611b90565b602002602001015193506113a98461105b565b915060008060006113b985611494565b9250925092506040518060e001604052806113d48960ff1690565b60058111156113e5576113e5611797565b8152602001836001600160a01b03168152602001846001600160a01b03168152602001611413876002015490565b8152602001826001600160a01b03168152602001611432876003015490565b8152602001611442876004015490565b8152508a858151811061145757611457611b90565b602002602001018190525050505080600101905061137c565b505050505050919050565b600060016001600160a01b0383169081149015176104d2565b80546001909101546001600160a01b038083169390821692600160601b600160a01b0360409190911c1660a09290921c9190911790565b60408051602881019290925260148201939093529081526048902060081b600117600090815260208190522090565b60006115058361106c565b6001600160a01b0316826001600160a01b031614905092915050565b600060405182603c8201528360288201528560148201528481526002605c822060081b1760005250600060205260406000209050949350505050565b600060405183605c82015282603c8201528460288201528660148201528581526005607c822060081b176000525060006020526040600020905095945050505050565b600060405183605c82015282603c8201528460288201528660148201528581526003607c822060081b176000525060006020526040600020905095945050505050565b600060405182603c8201528360288201528560148201528481526004605c822060081b1760005250600060205260406000209050949350505050565b6040805160e08101909152806000815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b80356001600160a01b038116811461167457600080fd5b919050565b6000806000806080858703121561168f57600080fd5b6116988561165d565b93506116a66020860161165d565b93969395505050506040820135916060013590565b6000602082840312156116cd57600080fd5b6116d68261165d565b9392505050565b6020808252825182820181905260009190848201906040850190845b81811015611715578351835292840192918401916001016116f9565b50909695505050505050565b60006020828403121561173357600080fd5b81356001600160e01b0319811681146116d657600080fd5b8035801515811461167457600080fd5b60008060006060848603121561177057600080fd5b6117798461165d565b92506020840135915061178e6040850161174b565b90509250925092565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b03169052565b60208082528251828201819052600091906040908185019086840185805b8381101561186857825180516006811061180057634e487b7160e01b84526021600452602484fd5b8652808801516001600160a01b03168887015286810151611823888801826117ad565b5060608181015190870152608080820151611840828901826117ad565b505060a0818101519087015260c0908101519086015260e090940193918601916001016117d8565b509298975050505050505050565b60008083601f84011261188857600080fd5b5081356001600160401b0381111561189f57600080fd5b6020830191508360208260051b85010111156118ba57600080fd5b9250929050565b600080602083850312156118d457600080fd5b82356001600160401b038111156118ea57600080fd5b6118f685828601611876565b90969095509350505050565b6000806000806080858703121561191857600080fd5b6119218561165d565b935061192f6020860161165d565b925061193d6040860161165d565b9396929550929360600135925050565b600080600080600060a0868803121561196557600080fd5b61196e8661165d565b945061197c6020870161165d565b94979496505050506040830135926060810135926080909101359150565b6000602080830181845280855180835260408601915060408160051b87010192508387016000805b83811015611a1e57888603603f1901855282518051808852835b818110156119f7578281018a01518982018b015289016119dc565b508781018901849052601f01601f19169096018701955093860193918601916001016119c2565b509398975050505050505050565b600080600080600060a08688031215611a4457600080fd5b611a4d8661165d565b9450611a5b6020870161165d565b93506040860135925060608601359150611a776080870161174b565b90509295509295909350565b600080600080600060a08688031215611a9b57600080fd5b611aa48661165d565b9450611ab26020870161165d565b9350611ac06040870161165d565b94979396509394606081013594506080013592915050565b60008060008060808587031215611aee57600080fd5b611af78561165d565b9350611b056020860161165d565b925060408501359150611b1a6060860161174b565b905092959194509250565b600080600060608486031215611b3a57600080fd5b611b438461165d565b9250611b516020850161165d565b9150604084013590509250925092565b600060208284031215611b7357600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611bbd57600080fd5b8301803591506001600160401b03821115611bd757600080fd5b6020019150368190038213156118ba57600080fd5b818382376000910190815291905056fea2646970667358221220d798d04681648b6470d9a89c2409c875246841f92f0970f28dec4b3bf686882c64736f6c63430008160033",
843
+ "deployedBytecode": "0x6080604052600436106100ee5760003560e01c80623c2ba6146100f357806301a920a01461011957806301ffc9a714610146578063063182a51461017657806330ff31401461019657806335faa416146101a957806342f87c25146101c05780634705ed38146101ed57806351525e9a1461020d57806361451a301461022d5780638988eea91461024d578063ab7646831461026d578063ac9650d814610280578063b18e2bbb146102a0578063b8705875146102b3578063b9f36874146102d3578063ba63c817146102f3578063d90e73ab14610313578063e839bd5314610326578063e8e834a914610346575b600080fd5b610106610101366004611679565b610365565b6040519081526020015b60405180910390f35b34801561012557600080fd5b506101396101343660046116bb565b6104ae565b60405161011091906116dd565b34801561015257600080fd5b50610166610161366004611721565b6104d8565b6040519015158152602001610110565b34801561018257600080fd5b506101396101913660046116bb565b610501565b6101066101a436600461175b565b610525565b3480156101b557600080fd5b506101be610626565b005b3480156101cc57600080fd5b506101e06101db3660046116bb565b610644565b60405161011091906117ba565b3480156101f957600080fd5b506101e06102083660046118c1565b610668565b34801561021957600080fd5b506101e06102283660046116bb565b610848565b34801561023957600080fd5b506101396102483660046118c1565b61086c565b34801561025957600080fd5b50610166610268366004611902565b610910565b61010661027b36600461194d565b610988565b61029361028e3660046118c1565b610aed565b604051610110919061199a565b6101066102ae366004611a2c565b610c0a565b3480156102bf57600080fd5b506101066102ce366004611a83565b610d28565b3480156102df57600080fd5b506101666102ee366004611a83565b610df6565b3480156102ff57600080fd5b5061010661030e366004611902565b610e86565b610106610321366004611ad8565b610f1d565b34801561033257600080fd5b50610166610341366004611b25565b61101d565b34801561035257600080fd5b50610106610361366004611b61565b5490565b604051603c810184905260288101859052336014820152828152605c902060081b60041760006103948261105b565b905060006103a18261106c565b90508315610435576001600160a01b0381166103f1576103c2338885611079565b6103ce823389896110c4565b6103da82600486910155565b84156103ec576103ec82600287910155565b610458565b6000196001600160a01b038216016104195761040d82336110f1565b6103ec82600486910155565b336001600160a01b038216036103ec576103ec82600486910155565b336001600160a01b03821603610458576104508260016110f1565b600060048301555b60408051868152602081018690526001600160a01b0380891692908a169133917f6ebd000dfc4dc9df04f723f827bae7694230795e8f22ed4af438e074cc982d1891015b60405180910390a45050949350505050565b6001600160a01b03811660009081526001602052604090206060906104d29061110e565b92915050565b60006301ffc9a760e01b6001600160e01b03198316908114632fb45e2d60e11b909114176104d2565b6001600160a01b03811660009081526002602052604090206060906104d29061110e565b604051602881018490523360148201528281526048902060081b600117600061054d8261105b565b9050600061055a8261106c565b905083156105bb576001600160a01b03811661059f5761057b338785611079565b61058882338860006110c4565b841561059a5761059a82600287910155565b6105d6565b6000196001600160a01b0382160161059a5761059a82336110f1565b336001600160a01b038216036105d6576105d68260016110f1565b6040805186815285151560208201526001600160a01b0388169133917fda3ef6410e30373a9137f83f9781a8129962b6882532b7c229de2e39de423227910160405180910390a350509392505050565b6000806000804770de1e80ea5a234fb5488fee2584251bc7e85af150565b6001600160a01b03811660009081526002602052604090206060906104d29061126a565b6060816001600160401b0381111561068257610682611b7a565b6040519080825280602002602001820160405280156106bb57816020015b6106a861161f565b8152602001906001900390816106a05790505b50905060005b828110156108415760006106ec8585848181106106e0576106e0611b90565b9050602002013561105b565b905060006106f98261106c565b90506107048161147b565b15610768576040805160e08101909152806000815260006020820181905260408201819052606082018190526080820181905260a0820181905260c090910152845185908590811061075857610758611b90565b6020026020010181905250610837565b60008061077484611494565b92509250506040518060e001604052806107a68a8a8981811061079957610799611b90565b9050602002013560ff1690565b60058111156107b7576107b7611797565b8152602001836001600160a01b03168152602001846001600160a01b031681526020016107e5866002015490565b8152602001826001600160a01b03168152602001610804866003015490565b8152602001610814866004015490565b81525086868151811061082957610829611b90565b602002602001018190525050505b50506001016106c1565b5092915050565b6001600160a01b03811660009081526001602052604090206060906104d29061126a565b606081806001600160401b0381111561088757610887611b7a565b6040519080825280602002602001820160405280156108b0578160200160208202803683370190505b50915060008060005b83811015610906578686828181106108d3576108d3611b90565b90506020020135925082549150818582815181106108f3576108f3611b90565b60209081029190910101526001016108b9565b5050505092915050565b600061091b8461147b565b61097c5761093461092e856000886114cb565b856114fa565b8061094a575061094a61092e8560008887611521565b905080151582151761097c5761096461092e8584886114cb565b80610979575061097961092e85848887611521565b90505b80151560005260206000f35b604051605c8101849052603c810185905260288101869052336014820152828152607c902060081b60051760006109be8261105b565b905060006109cb8261106c565b90508315610a6b576001600160a01b038116610a27576109ec338985611079565b6109f882338a8a6110c4565b610a0482600388910155565b610a1082600486910155565b8415610a2257610a2282600287910155565b610a8e565b6000196001600160a01b03821601610a4f57610a4382336110f1565b610a2282600486910155565b336001600160a01b03821603610a2257610a2282600486910155565b336001600160a01b03821603610a8e57610a868260016110f1565b600060048301555b60408051878152602081018790529081018590526001600160a01b0380891691908a169033907f27ab1adc9bca76301ed7a691320766dfa4b4b1aa32c9e05cf789611be7f8c75f906060015b60405180910390a4505095945050505050565b6060816001600160401b03811115610b0757610b07611b7a565b604051908082528060200260200182016040528015610b3a57816020015b6060815260200190600190039081610b255790505b5090506000805b83811015610c025730858583818110610b5c57610b5c611b90565b9050602002810190610b6e9190611ba6565b604051610b7c929190611bec565b600060405180830381855af49150503d8060008114610bb7576040519150601f19603f3d011682016040523d82523d6000602084013e610bbc565b606091505b50848381518110610bcf57610bcf611b90565b6020908102919091010152915081610bfa576040516309ad446560e31b815260040160405180910390fd5b600101610b41565b505092915050565b604051605c8101849052603c810185905260288101869052336014820152828152607c902060081b6003176000610c408261105b565b90506000610c4d8261106c565b90508315610cb9576001600160a01b038116610c9d57610c6e338985611079565b610c7a82338a8a6110c4565b610c8682600388910155565b8415610c9857610c9882600287910155565b610cd4565b6000196001600160a01b03821601610c9857610c9882336110f1565b336001600160a01b03821603610cd457610cd48260016110f1565b6040805187815260208101879052851515918101919091526001600160a01b0380891691908a169033907f15e7a1bdcd507dd632d797d38e60cc5a9c0749b9a63097a215c4d006126825c690606001610ada565b6000610d338561147b565b610dec57610d4c610d46866000896114cb565b866114fa565b80610d625750610d62610d468660008988611521565b610d8357610d7e610d7786600089878961155d565b6004015490565b610d87565b6000195b90506000198114821517610dec576000610dab610da587858a6114cb565b876114fa565b80610dc05750610dc0610da587858a89611521565b610dd957610dd4610d7787858a888a61155d565b610ddd565b6000195b90508181108282180281189150505b8060005260206000f35b6000610e018561147b565b61097c57610e14610d46866000896114cb565b80610e2a5750610e2a610d468660008988611521565b80610e415750610e41610d468660008987896115a0565b905080151582151761097c57610e5b610d468684896114cb565b80610e705750610e70610d4686848988611521565b806109795750610979610d4686848987896115a0565b6000610e918461147b565b610dec57610ea461092e856000886114cb565b80610eba5750610eba61092e8560008887611521565b610ed357610ece610d7785600088876115e3565b610ed7565b6000195b90506000198114821517610dec576000610ef5610d468685896114cb565b80610f0a5750610f0a610d4686858988611521565b610dd957610dd4610d77868589886115e3565b604051603c810184905260288101859052336014820152828152605c902060081b6002176000610f4c8261105b565b90506000610f598261106c565b90508315610fb9576001600160a01b038116610f9d57610f7a338885611079565b610f86823389896110c4565b8415610f9857610f9882600287910155565b610fd4565b6000196001600160a01b03821601610f9857610f9882336110f1565b336001600160a01b03821603610fd457610fd48260016110f1565b6040805186815285151560208201526001600160a01b0380891692908a169133917f021be15e24de4afc43cfb5d0ba95ca38e0783571e05c12bbe6aece8842ae82df910161049c565b60006110288361147b565b61097c5761104161103b846000876114cb565b846114fa565b905080151582151761097c5761097961103b8484876114cb565b600090815260208190526040902090565b546001600160a01b031690565b6001600160a01b039283166000908152600160208181526040808420805480850182559085528285200185905594909516825260028552928120805493840181558152929092200155565b600160a01b600160e01b03604082901b166001600160a01b0393841617845560a01b911617600190910155565b81546001600160a01b0319166001600160a01b0391909116179055565b80546060906000908180826001600160401b0381111561113057611130611b7a565b604051908082528060200260200182016040528015611159578160200160208202803683370190505b50905060005b838110156111d15786818154811061117957611179611b90565b9060005260206000200154925061119f61119a6111958561105b565b61106c565b61147b565b6111c957828286806001019750815181106111bc576111bc611b90565b6020026020010181815250505b60010161115f565b50836001600160401b038111156111ea576111ea611b7a565b604051908082528060200260200182016040528015611213578160200160208202803683370190505b50945060005b848110156112605781818151811061123357611233611b90565b602002602001015186828151811061124d5761124d611b90565b6020908102919091010152600101611219565b5050505050919050565b80546060906000908180826001600160401b0381111561128c5761128c611b7a565b6040519080825280602002602001820160405280156112b5578160200160208202803683370190505b50905060005b83811015611323578681815481106112d5576112d5611b90565b906000526020600020015492506112f161119a6111958561105b565b61131b578282868060010197508151811061130e5761130e611b90565b6020026020010181815250505b6001016112bb565b50836001600160401b0381111561133c5761133c611b7a565b60405190808252806020026020018201604052801561137557816020015b61136261161f565b81526020019060019003908161135a5790505b5094506000805b858110156114705782818151811061139657611396611b90565b602002602001015193506113a98461105b565b915060008060006113b985611494565b9250925092506040518060e001604052806113d48960ff1690565b60058111156113e5576113e5611797565b8152602001836001600160a01b03168152602001846001600160a01b03168152602001611413876002015490565b8152602001826001600160a01b03168152602001611432876003015490565b8152602001611442876004015490565b8152508a858151811061145757611457611b90565b602002602001018190525050505080600101905061137c565b505050505050919050565b600060016001600160a01b0383169081149015176104d2565b80546001909101546001600160a01b038083169390821692600160601b600160a01b0360409190911c1660a09290921c9190911790565b60408051602881019290925260148201939093529081526048902060081b600117600090815260208190522090565b60006115058361106c565b6001600160a01b0316826001600160a01b031614905092915050565b600060405182603c8201528360288201528560148201528481526002605c822060081b1760005250600060205260406000209050949350505050565b600060405183605c82015282603c8201528460288201528660148201528581526005607c822060081b176000525060006020526040600020905095945050505050565b600060405183605c82015282603c8201528460288201528660148201528581526003607c822060081b176000525060006020526040600020905095945050505050565b600060405182603c8201528360288201528560148201528481526004605c822060081b1760005250600060205260406000209050949350505050565b6040805160e08101909152806000815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b80356001600160a01b038116811461167457600080fd5b919050565b6000806000806080858703121561168f57600080fd5b6116988561165d565b93506116a66020860161165d565b93969395505050506040820135916060013590565b6000602082840312156116cd57600080fd5b6116d68261165d565b9392505050565b6020808252825182820181905260009190848201906040850190845b81811015611715578351835292840192918401916001016116f9565b50909695505050505050565b60006020828403121561173357600080fd5b81356001600160e01b0319811681146116d657600080fd5b8035801515811461167457600080fd5b60008060006060848603121561177057600080fd5b6117798461165d565b92506020840135915061178e6040850161174b565b90509250925092565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b03169052565b60208082528251828201819052600091906040908185019086840185805b8381101561186857825180516006811061180057634e487b7160e01b84526021600452602484fd5b8652808801516001600160a01b03168887015286810151611823888801826117ad565b5060608181015190870152608080820151611840828901826117ad565b505060a0818101519087015260c0908101519086015260e090940193918601916001016117d8565b509298975050505050505050565b60008083601f84011261188857600080fd5b5081356001600160401b0381111561189f57600080fd5b6020830191508360208260051b85010111156118ba57600080fd5b9250929050565b600080602083850312156118d457600080fd5b82356001600160401b038111156118ea57600080fd5b6118f685828601611876565b90969095509350505050565b6000806000806080858703121561191857600080fd5b6119218561165d565b935061192f6020860161165d565b925061193d6040860161165d565b9396929550929360600135925050565b600080600080600060a0868803121561196557600080fd5b61196e8661165d565b945061197c6020870161165d565b94979496505050506040830135926060810135926080909101359150565b6000602080830181845280855180835260408601915060408160051b87010192508387016000805b83811015611a1e57888603603f1901855282518051808852835b818110156119f7578281018a01518982018b015289016119dc565b508781018901849052601f01601f19169096018701955093860193918601916001016119c2565b509398975050505050505050565b600080600080600060a08688031215611a4457600080fd5b611a4d8661165d565b9450611a5b6020870161165d565b93506040860135925060608601359150611a776080870161174b565b90509295509295909350565b600080600080600060a08688031215611a9b57600080fd5b611aa48661165d565b9450611ab26020870161165d565b9350611ac06040870161165d565b94979396509394606081013594506080013592915050565b60008060008060808587031215611aee57600080fd5b611af78561165d565b9350611b056020860161165d565b925060408501359150611b1a6060860161174b565b905092959194509250565b600080600060608486031215611b3a57600080fd5b611b438461165d565b9250611b516020850161165d565b9150604084013590509250925092565b600060208284031215611b7357600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611bbd57600080fd5b8301803591506001600160401b03821115611bd757600080fd5b6020019150368190038213156118ba57600080fd5b818382376000910190815291905056fea2646970667358221220d798d04681648b6470d9a89c2409c875246841f92f0970f28dec4b3bf686882c64736f6c63430008160033",
844
+ "linkReferences": {},
845
+ "deployedLinkReferences": {}
846
+ }