@artblocks/contracts 1.3.1 → 1.4.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 (234) hide show
  1. package/README.md +11 -10
  2. package/artifacts/contracts/AdminACLV0RoyaltyRegistry.sol/AdminACLV0RoyaltyRegistry.json +193 -0
  3. package/artifacts/contracts/AdminACLV0RoyaltyRegistry.sol/IRoyaltyRegistry.json +35 -0
  4. package/artifacts/contracts/AdminACLV1.sol/AdminACLV1.json +2 -2
  5. package/artifacts/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2.sol/BytecodeStorageReaderContractV2.json +2 -2
  6. package/artifacts/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2_Web3Call.sol/BytecodeStorageReaderContractV2_Web3Call.json +2 -2
  7. package/artifacts/contracts/BytecodeStorageV2Writer.sol/BytecodeStorageV2Writer.json +2 -2
  8. package/artifacts/contracts/DependencyRegistryV0.sol/DependencyRegistryV0.json +210 -2
  9. package/artifacts/contracts/GenArt721CoreV3_Curated.sol/GenArt721CoreV3_Curated.json +235 -20
  10. package/artifacts/contracts/GenArt721CoreV3_Curated_Flex.sol/GenArt721CoreV3_Curated_Flex.json +3197 -0
  11. package/artifacts/contracts/GenArt721CoreV3_Explorations_Flex.sol/GenArt721CoreV3_Explorations_Flex.json +3192 -0
  12. package/artifacts/contracts/OwnedCreate2FactoryV0.sol/OwnedCreate2FactoryV0.json +2 -2
  13. package/artifacts/contracts/archive/GenArt721CoreV3.sol/GenArt721CoreV3.json +27 -2
  14. package/artifacts/contracts/archive/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +27 -2
  15. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol/MinterDAExpV2.json +2 -2
  16. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol/MinterDAExpV3.json +2 -2
  17. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV4.sol/MinterDAExpV4.json +2 -2
  18. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +2 -2
  19. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +2 -2
  20. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +2 -2
  21. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol/MinterDALinV2.json +2 -2
  22. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol/MinterDALinV3.json +2 -2
  23. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV4.sol/MinterDALinV4.json +2 -2
  24. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol/MinterHolderV1.json +2 -2
  25. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +2 -2
  26. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol/MinterHolderV3.json +2 -2
  27. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV4.sol/MinterHolderV4.json +2 -2
  28. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol/MinterMerkleV1.json +2 -2
  29. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol/MinterMerkleV2.json +2 -2
  30. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol/MinterMerkleV3.json +2 -2
  31. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol/MinterMerkleV4.json +2 -2
  32. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV5.sol/MinterMerkleV5.json +2 -2
  33. package/artifacts/contracts/archive/minter-suite/Minters/MinterPolyptych/MinterPolyptychV0.sol/IGenArt721CoreContractV3WithRandomizer.json +25 -0
  34. package/artifacts/contracts/archive/minter-suite/Minters/MinterPolyptych/MinterPolyptychV0.sol/MinterPolyptychV0.json +2 -2
  35. package/artifacts/contracts/archive/minter-suite/Minters/MinterSEA/MinterSEAV0.sol/MinterSEAV0.json +2 -2
  36. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +2 -2
  37. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +2 -2
  38. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV4.sol/MinterSetPriceV4.json +2 -2
  39. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +2 -2
  40. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +2 -2
  41. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +2 -2
  42. package/artifacts/contracts/engine/V3/EngineFactoryV0.sol/EngineFactoryV0.json +28 -2
  43. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +239 -20
  44. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +267 -48
  45. package/artifacts/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol/GenArt721CoreV3_Engine_Flex_PROOF.json +27 -2
  46. package/artifacts/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol/AdminACLV0_PROHIBITION.json +2 -2
  47. package/artifacts/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol/GenArt721CoreV3_Engine_Flex_PROHIBITION.json +27 -2
  48. package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.json +25 -0
  49. package/artifacts/contracts/engine/V3/transfer-hooks/AbstractTransferHook.sol/AbstractTransferHook.json +79 -0
  50. package/artifacts/contracts/engine/V3/transfer-hooks/OwnerHistoryTransferHook.sol/OwnerHistoryTransferHook.json +315 -0
  51. package/artifacts/contracts/generator/GenArt721GeneratorV0.sol/GenArt721GeneratorV0.json +2 -2
  52. package/artifacts/contracts/interfaces/v0.8.x/IClaimMinter.sol/IClaimMinter.json +189 -0
  53. package/artifacts/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol/IDependencyRegistryV0.json +149 -0
  54. package/artifacts/contracts/interfaces/v0.8.x/IEngineFactoryV0.sol/IEngineFactoryV0.json +26 -0
  55. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +25 -0
  56. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +25 -0
  57. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +123 -0
  58. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +123 -0
  59. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.sol/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.json +25 -0
  60. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_PreV3p2.sol/IGenArt721CoreContractV3_Engine_PreV3p2.json +25 -0
  61. package/artifacts/contracts/interfaces/v0.8.x/IOwnerHistoryTransferHook.sol/IOwnerHistoryTransferHook.json +299 -0
  62. package/artifacts/contracts/interfaces/v0.8.x/IPMPV0.sol/IPMPV0.json +7 -1
  63. package/artifacts/contracts/interfaces/v0.8.x/ISRHooks.sol/ISRHooks.json +432 -0
  64. package/artifacts/contracts/interfaces/v0.8.x/ISeaDropShimForContract.sol/ISeaDropShimForContract.json +0 -13
  65. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterTieredAllowV0.sol/ISharedMinterTieredAllowV0.json +94 -0
  66. package/artifacts/contracts/interfaces/v0.8.x/ITransferHook.sol/ITransferHook.json +63 -0
  67. package/artifacts/contracts/libs/v0.8.x/AuthLib.sol/AuthLib.json +2 -2
  68. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV2.sol/BytecodeStorageReader.json +2 -2
  69. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV2.sol/BytecodeStorageWriter.json +2 -2
  70. package/artifacts/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol/DependencyRegistryStorageLib.json +2 -2
  71. package/artifacts/contracts/libs/v0.8.x/ENSLib.sol/ENSLib.json +10 -0
  72. package/artifacts/contracts/libs/v0.8.x/ENSLib.sol/IUniversalResolver.json +45 -0
  73. package/artifacts/contracts/libs/v0.8.x/EnumerableSetUint16.sol/EnumerableSetUint16.json +10 -0
  74. package/artifacts/contracts/libs/v0.8.x/FeistelWalkLib.sol/FeistelWalkLib.json +10 -0
  75. package/artifacts/contracts/libs/v0.8.x/ImmutableUint16Array.sol/ImmutableUint16Array.json +10 -0
  76. package/artifacts/contracts/libs/v0.8.x/V3EngineLib.sol/V3EngineLib.json +163 -0
  77. package/artifacts/contracts/libs/v0.8.x/V3FlexLib.sol/V3FlexLib.json +2 -2
  78. package/artifacts/contracts/libs/v0.8.x/V3TransferHookLib.sol/V3TransferHookLib.json +79 -0
  79. package/artifacts/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol/MaxInvocationsLib.json +2 -2
  80. package/artifacts/contracts/libs/v0.8.x/minter-libs/OnChainAllowlistLib.sol/OnChainAllowlistLib.json +10 -0
  81. package/artifacts/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol/PolyptychLib.json +2 -2
  82. package/artifacts/contracts/libs/v0.8.x/minter-libs/RAMLib.sol/RAMLib.json +2 -2
  83. package/artifacts/contracts/libs/v0.8.x/minter-libs/SEALib.sol/SEALib.json +2 -2
  84. package/artifacts/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol/SettlementExpLib.json +2 -2
  85. package/artifacts/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol/SplitFundsLib.json +2 -2
  86. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +2 -2
  87. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV2.sol/MinterFilterV2.json +2 -2
  88. package/artifacts/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol/MinterDAExpHolderV5.json +2 -2
  89. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol/MinterDAExpSettlementV3.json +2 -2
  90. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV5.sol/MinterDAExpV5.json +2 -2
  91. package/artifacts/contracts/minter-suite/Minters/MinterDALinHolderV5.sol/MinterDALinHolderV5.json +2 -2
  92. package/artifacts/contracts/minter-suite/Minters/MinterDALinV5.sol/MinterDALinV5.json +2 -2
  93. package/artifacts/contracts/minter-suite/Minters/MinterMinPriceMerkleV0.sol/MinterMinPriceMerkleV0.json +2 -2
  94. package/artifacts/contracts/minter-suite/Minters/MinterMinPriceV0.sol/MinterMinPriceV0.json +2 -2
  95. package/artifacts/contracts/minter-suite/Minters/MinterRAMV0.sol/MinterRAMV0.json +2 -2
  96. package/artifacts/contracts/minter-suite/Minters/MinterSEAV1.sol/MinterSEAV1.json +2 -2
  97. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol/MinterSetPriceERC20V5.json +2 -2
  98. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol/MinterSetPriceHolderV5.json +2 -2
  99. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol/MinterSetPriceMerkleV5.json +2 -2
  100. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceOnChainAllowV0.sol/MinterSetPriceOnChainAllowV0.json +522 -0
  101. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol/MinterSetPricePolyptychERC20V5.json +2 -2
  102. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol/MinterSetPricePolyptychV5.json +2 -2
  103. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceTieredAllowV1.sol/MinterSetPriceTieredAllowV1.json +715 -0
  104. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV5.sol/MinterSetPriceV5.json +2 -2
  105. package/artifacts/contracts/minter-suite/Minters/MinterSlidingScaleV0.sol/MinterSlidingScaleV0.json +431 -0
  106. package/artifacts/contracts/minter-suite/Minters/one-off/ClaimMinter.sol/ClaimMinter.json +502 -0
  107. package/artifacts/contracts/minter-suite/Minters/one-off/MinterSetPriceTieredOnChainAllowV0.sol/MinterSetPriceTieredOnChainAllowV0.json +673 -0
  108. package/artifacts/contracts/minter-suite/Minters/one-off/MinterSetPriceV5_SingleCore.sol/MinterSetPriceV5_SingleCore.json +2 -2
  109. package/artifacts/contracts/minter-suite/Minters/one-off/SeaDropXArtBlocksShim.sol/SeaDropXArtBlocksShim.json +6 -19
  110. package/artifacts/contracts/mock/BytecodeV2TextCR_DMock.sol/BytecodeV2TextCR_DMock.json +2 -2
  111. package/artifacts/contracts/mock/DummySharedMinter.sol/DummySharedMinter.json +2 -2
  112. package/artifacts/contracts/mock/ENSLibMock.sol/ENSLibMock.json +30 -0
  113. package/artifacts/contracts/mock/EnumerableSetUint16Mock.sol/EnumerableSetUint16Mock.json +146 -0
  114. package/artifacts/contracts/mock/FeistelWalkLibMock.sol/FeistelWalkLibMock.json +142 -0
  115. package/artifacts/contracts/mock/ForceSendMock.sol/ForceSendMock.json +2 -2
  116. package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +2 -2
  117. package/artifacts/contracts/mock/ImmutableUint16ArrayMock.sol/ImmutableUint16ArrayMock.json +89 -0
  118. package/artifacts/contracts/mock/MockAdminACLV0_PROHIBITION.sol/MockAdminACLV0Events_PROHIBITION.json +2 -2
  119. package/artifacts/contracts/mock/MockGenArt721V3Core.sol/MockGenArt721V3Core.json +490 -0
  120. package/artifacts/contracts/mock/MockPMP.sol/MockPMP.json +523 -0
  121. package/artifacts/contracts/mock/MockPMPAugmentHook.sol/MockPMPAugmentHook.json +2 -2
  122. package/artifacts/contracts/mock/MockPMPConfigureHook.sol/MockPMPConfigureHook.json +2 -2
  123. package/artifacts/contracts/mock/MockTransferHook.sol/MockTransferHook.json +453 -0
  124. package/artifacts/contracts/mock/MockTransferHookTestHelpers.sol/MockBatchTransferrer.json +39 -0
  125. package/artifacts/contracts/mock/MockTransferHookTestHelpers.sol/MockForwardingERC721Receiver.json +71 -0
  126. package/artifacts/contracts/mock/MockTransferHookTestHelpers.sol/MockSpoofingCore.json +94 -0
  127. package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +2 -2
  128. package/artifacts/contracts/mock/ReentrancyBatchMockShared.sol/IBatchMinter.json +64 -0
  129. package/artifacts/contracts/mock/ReentrancyBatchMockShared.sol/ReentrancyBatchMockShared.json +113 -0
  130. package/artifacts/contracts/mock/RelayExecutorTestHelper.sol/MockTarget.json +74 -0
  131. package/artifacts/contracts/mock/RelayExecutorTestHelper.sol/RelayExecutorPartialRevertsTestHelper.json +138 -0
  132. package/artifacts/contracts/mock/RelayExecutorTestHelper.sol/RelayExecutorTestHelper.json +119 -0
  133. package/artifacts/contracts/randomizer/deprecated/PolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +2 -2
  134. package/artifacts/contracts/randomizer/deprecated/RandomizerV2.sol/BasicRandomizerV2.json +2 -2
  135. package/artifacts/contracts/randomizer/shared/SharedRandomizerV0.sol/SharedRandomizerV0.json +2 -2
  136. package/artifacts/contracts/relay/RelayExecutor.sol/RelayExecutor.json +101 -0
  137. package/artifacts/contracts/relay/RelayExecutorPartialReverts.sol/RelayExecutorPartialReverts.json +120 -0
  138. package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverrideSplits.sol/GenArt721RoyaltyOverrideSplits.json +263 -0
  139. package/artifacts/contracts/utils/MintMulticallUtil.sol/IMinterSetPriceV5.json +40 -0
  140. package/artifacts/contracts/utils/MintMulticallUtil.sol/MintMulticallUtil.json +163 -0
  141. package/artifacts/contracts/web3call/PMPV0.sol/PMPV0.json +9 -3
  142. package/artifacts/contracts/web3call/PMPV1.sol/PMPV1.json +648 -0
  143. package/artifacts/contracts/web3call/augment-hooks/InjectBaseGasFee.sol/InjectBaseGasFee.json +2 -2
  144. package/artifacts/contracts/web3call/augment-hooks/InjectBlockHeight.sol/InjectBlockHeight.json +83 -0
  145. package/artifacts/contracts/web3call/augment-hooks/InjectBlockHeightAndArtistProjectOverrides.sol/InjectBlockHeightAndArtistProjectOverrides.json +226 -0
  146. package/artifacts/contracts/web3call/augment-hooks/InjectBlockHeightAndNumOwnedProjectTokens.sol/InjectBlockHeightAndNumOwnedProjectTokens.json +182 -0
  147. package/artifacts/contracts/web3call/augment-hooks/InjectBlockHeightProjectInvocationsAndArtistProjectOverrides.sol/InjectBlockHeightProjectInvocationsAndArtistProjectOverrides.json +226 -0
  148. package/artifacts/contracts/web3call/augment-hooks/InjectBlockTimestamp.sol/InjectBlockTimestamp.json +83 -0
  149. package/artifacts/contracts/web3call/augment-hooks/InjectBytesPerToken.sol/InjectBytesPerToken.json +358 -0
  150. package/artifacts/contracts/web3call/augment-hooks/InjectChromieSquiggleFloorPrice.sol/InjectChromieSquiggleFloorPrice.json +2 -2
  151. package/artifacts/contracts/web3call/augment-hooks/InjectIsNounsDaoMember.sol/InjectIsNounsDaoMember.json +2 -2
  152. package/artifacts/contracts/web3call/augment-hooks/InjectIsProjectFullyMinted.sol/InjectIsProjectFullyMinted.json +2 -2
  153. package/artifacts/contracts/web3call/augment-hooks/InjectPolyptychTokenHash.sol/InjectPolyptychTokenHash.json +2 -2
  154. package/artifacts/contracts/web3call/augment-hooks/InjectTokenHashSeed.sol/InjectTokenHashSeed.json +2 -2
  155. package/artifacts/contracts/web3call/augment-hooks/InjectTokenOwner.sol/InjectTokenOwner.json +2 -2
  156. package/artifacts/contracts/web3call/augment-hooks/InjectTokenOwnerEthBalance.sol/InjectTokenOwnerEthBalance.json +2 -2
  157. package/artifacts/contracts/web3call/augment-hooks/InjectUSDCTotalSupply.sol/InjectUSDCTotalSupply.json +2 -2
  158. package/artifacts/contracts/web3call/augment-hooks/SRHooks.sol/SRHooks.json +899 -0
  159. package/artifacts/contracts/web3call/combined-hooks/LiftHooks.sol/IGenArt721V0_Minimal.json +30 -0
  160. package/artifacts/contracts/web3call/combined-hooks/LiftHooks.sol/IRelic.json +35 -0
  161. package/artifacts/contracts/web3call/combined-hooks/LiftHooks.sol/LiftHooks.json +256 -0
  162. package/artifacts/contracts/web3call/configure-hooks/{abstractPMPConfigureHook.sol → AbstractPMPConfigureHook.sol}/AbstractPMPConfigureHook.json +1 -1
  163. package/artifacts/contracts/web3call/configure-hooks/PMPConfigureLockHook.sol/PMPConfigureLockHook.json +195 -0
  164. package/contracts/AdminACLV0RoyaltyRegistry.sol +142 -0
  165. package/contracts/DependencyRegistryV0.sol +143 -13
  166. package/contracts/GenArt721CoreV3_Curated.sol +1 -1
  167. package/contracts/GenArt721CoreV3_Curated_Flex.sol +173 -0
  168. package/contracts/GenArt721CoreV3_Explorations_Flex.sol +159 -0
  169. package/contracts/engine/V3/EngineFactoryV0.sol +20 -1
  170. package/contracts/engine/V3/GenArt721CoreV3_Engine.sol +286 -299
  171. package/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol +292 -301
  172. package/contracts/engine/V3/transfer-hooks/AbstractTransferHook.sol +101 -0
  173. package/contracts/engine/V3/transfer-hooks/OwnerHistoryTransferHook.sol +291 -0
  174. package/contracts/generator/GenArt721GeneratorV0.sol +145 -47
  175. package/contracts/helpers/ERC1967ProxyImport.sol +5 -0
  176. package/contracts/interfaces/v0.8.x/IArtblocksRoyaltyOverride.sol +1 -1
  177. package/contracts/interfaces/v0.8.x/IClaimMinter.sol +70 -0
  178. package/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol +95 -0
  179. package/contracts/interfaces/v0.8.x/IEngineFactoryV0.sol +15 -0
  180. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol +21 -2
  181. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol +72 -0
  182. package/contracts/interfaces/v0.8.x/IOwnerHistoryTransferHook.sol +119 -0
  183. package/contracts/interfaces/v0.8.x/IPMPV0.sol +5 -3
  184. package/contracts/interfaces/v0.8.x/ISRHooks.sol +229 -0
  185. package/contracts/interfaces/v0.8.x/ISeaDropShimForContract.sol +0 -6
  186. package/contracts/interfaces/v0.8.x/ISharedMinterTieredAllowV0.sol +69 -0
  187. package/contracts/interfaces/v0.8.x/ITransferHook.sol +48 -0
  188. package/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol +12 -0
  189. package/contracts/libs/v0.8.x/ENSLib.sol +85 -0
  190. package/contracts/libs/v0.8.x/EnumerableSetUint16.sol +429 -0
  191. package/contracts/libs/v0.8.x/FeistelWalkLib.sol +221 -0
  192. package/contracts/libs/v0.8.x/ImmutableUint16Array.sol +201 -0
  193. package/contracts/libs/v0.8.x/V3EngineLib.sol +490 -0
  194. package/contracts/libs/v0.8.x/V3TransferHookLib.sol +251 -0
  195. package/contracts/libs/v0.8.x/minter-libs/OnChainAllowlistLib.sol +165 -0
  196. package/contracts/minter-suite/Minters/MinterSetPriceOnChainAllowV0.sol +632 -0
  197. package/contracts/minter-suite/Minters/MinterSetPriceTieredAllowV1.sol +871 -0
  198. package/contracts/minter-suite/Minters/MinterSlidingScaleV0.sol +493 -0
  199. package/contracts/minter-suite/Minters/one-off/ClaimMinter.sol +595 -0
  200. package/contracts/minter-suite/Minters/one-off/MinterSetPriceTieredOnChainAllowV0.sol +894 -0
  201. package/contracts/minter-suite/Minters/one-off/SeaDropXArtBlocksShim.sol +59 -41
  202. package/contracts/mock/ENSLibMock.sol +25 -0
  203. package/contracts/mock/EnumerableSetUint16Mock.sol +88 -0
  204. package/contracts/mock/FeistelWalkLibMock.sol +81 -0
  205. package/contracts/mock/ImmutableUint16ArrayMock.sol +62 -0
  206. package/contracts/mock/MockGenArt721V3Core.sol +416 -0
  207. package/contracts/mock/MockPMP.sol +287 -0
  208. package/contracts/mock/MockTransferHook.sol +160 -0
  209. package/contracts/mock/MockTransferHookTestHelpers.sol +96 -0
  210. package/contracts/mock/ReentrancyBatchMockShared.sol +53 -0
  211. package/contracts/mock/RelayExecutorTestHelper.sol +44 -0
  212. package/contracts/relay/RelayExecutor.sol +61 -0
  213. package/contracts/relay/RelayExecutorPartialReverts.sol +79 -0
  214. package/contracts/royalty-registry/GenArt721RoyaltyOverrideSplits.sol +130 -0
  215. package/contracts/utils/MintMulticallUtil.sol +103 -0
  216. package/contracts/web3call/PMPV0.sol +92 -98
  217. package/contracts/web3call/PMPV1.sol +1204 -0
  218. package/contracts/web3call/augment-hooks/AbstractPMPAugmentHook.sol +1 -1
  219. package/contracts/web3call/augment-hooks/InjectBaseGasFee.sol +1 -1
  220. package/contracts/web3call/augment-hooks/InjectBlockHeight.sol +57 -0
  221. package/contracts/web3call/augment-hooks/InjectBlockHeightAndArtistProjectOverrides.sol +310 -0
  222. package/contracts/web3call/augment-hooks/InjectBlockHeightAndNumOwnedProjectTokens.sol +141 -0
  223. package/contracts/web3call/augment-hooks/InjectBlockHeightProjectInvocationsAndArtistProjectOverrides.sol +326 -0
  224. package/contracts/web3call/augment-hooks/InjectBlockTimestamp.sol +57 -0
  225. package/contracts/web3call/augment-hooks/InjectBytesPerToken.sol +279 -0
  226. package/contracts/web3call/augment-hooks/InjectIsProjectFullyMinted.sol +1 -1
  227. package/contracts/web3call/augment-hooks/InjectTokenHashSeed.sol +1 -1
  228. package/contracts/web3call/augment-hooks/InjectTokenOwner.sol +1 -1
  229. package/contracts/web3call/augment-hooks/InjectTokenOwnerEthBalance.sol +1 -1
  230. package/contracts/web3call/augment-hooks/SRHooks.sol +1722 -0
  231. package/contracts/web3call/combined-hooks/LiftHooks.sol +304 -0
  232. package/contracts/web3call/configure-hooks/{abstractPMPConfigureHook.sol → AbstractPMPConfigureHook.sol} +1 -1
  233. package/contracts/web3call/configure-hooks/PMPConfigureLockHook.sol +107 -0
  234. package/package.json +40 -25
@@ -222,8 +222,8 @@
222
222
  "type": "function"
223
223
  }
224
224
  ],
225
- "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6109798061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea2646970667358221220681a4e1625f6b753977654ee3f9be8f851c0baff1213d2d60e085f6a2e97a6d564736f6c63430008130033",
226
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea2646970667358221220681a4e1625f6b753977654ee3f9be8f851c0baff1213d2d60e085f6a2e97a6d564736f6c63430008130033",
225
+ "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6109798061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea2646970667358221220ee5173eef5f016b912b553c971e163aa2b62bc2045d12e44ed7c93ef3620684f64736f6c63430008130033",
226
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea2646970667358221220ee5173eef5f016b912b553c971e163aa2b62bc2045d12e44ed7c93ef3620684f64736f6c63430008130033",
227
227
  "linkReferences": {},
228
228
  "deployedLinkReferences": {}
229
229
  }
@@ -95,8 +95,8 @@
95
95
  "type": "function"
96
96
  }
97
97
  ],
98
- "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6104738061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea264697066735822122019ba206e0df91e7ff68994d026a3aa70936b620c436502dd9927fb40839e625464736f6c63430008130033",
99
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea264697066735822122019ba206e0df91e7ff68994d026a3aa70936b620c436502dd9927fb40839e625464736f6c63430008130033",
98
+ "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6104738061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea26469706673582212205f9a7c395b7ac54d47a6a00455f1c8bc73e17478ec55791de4f1d5a333bbc3ff64736f6c63430008130033",
99
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea26469706673582212205f9a7c395b7ac54d47a6a00455f1c8bc73e17478ec55791de4f1d5a333bbc3ff64736f6c63430008130033",
100
100
  "linkReferences": {},
101
101
  "deployedLinkReferences": {}
102
102
  }
@@ -240,8 +240,8 @@
240
240
  "type": "function"
241
241
  }
242
242
  ],
243
- "bytecode": "0x60a060405234801561001057600080fd5b5060405161089b38038061089b83398101604081905261002f9161006d565b6001600160a01b03811660808190526040517f2ad63d43bf15d4fb27447dac9430a7e357192317067d6a79f145ae0893867d2890600090a25061009d565b60006020828403121561007f57600080fd5b81516001600160a01b038116811461009657600080fd5b9392505050565b6080516107dc6100bf60003960008181610146015261054f01526107dc6000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c80638f2a62c31461007d5780639f8ac23f146100cb578063a6db8cb614610119578063b1aea8c91461012e578063b310c79214610141578063b628171a14610168578063dddceed11461017b578063eaedc4231461018e575b600080fd5b6100b661008b366004610683565b6001600160a01b03919091166000908152600160209081526040808320938352929052205460ff1690565b60405190151581526020015b60405180910390f35b6101016100d9366004610683565b6001600160a01b03918216600090815260026020908152604080832093835292905220541690565b6040516001600160a01b0390911681526020016100c2565b61012c610127366004610683565b6101de565b005b61012c61013c3660046106af565b610260565b6101017f000000000000000000000000000000000000000000000000000000000000000081565b61012c6101763660046106f1565b6102cf565b61012c61018936600461070a565b610400565b6101c561019c366004610683565b6001600160a01b0391909116600090815260208181526040808320938352929052205460a01b90565b6040516001600160a01b031990911681526020016100c2565b6101e88282610454565b6001600160a01b0382166000818152600160209081526040808320858452825291829020805460ff19811660ff91821615908117909255835194855291840185905216151582820152517f459a9692be7991c0a9003b1503f8bae163cd2c99f35c952bf5b7b8d47629f6069181900360600190a15050565b61026a8383610454565b6001600160a01b03838116600081815260026020908152604080832087845290915280822080546001600160a01b0319169486169485179055518592917f3a32d746deba4ebe76a81771454e46f19940f56a24b0594a42356bcea6ac841491a4505050565b3360006102db8361050f565b6001600160a01b03831660009081526001602090815260408083208484529091528120549192509060ff161561034057506001600160a01b03821660009081526020818152604080832086845290915290205460a01b6001600160a01b03191661034d565b61034a8385610524565b90505b600081900361039d5760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b60448201526064015b60405180910390fd5b60405161078f60e21b815260048101859052602481018290526001600160a01b03841690611e3c90604401600060405180830381600087803b1580156103e257600080fd5b505af11580156103f6573d6000803e3d6000fd5b5050505050505050565b600061040b8361050f565b905061041784826105f7565b506001600160a01b03929092166000908152602081815260408083209383529290522080546001600160601b03191660a09290921c919091179055565b60405163a47d29cb60e01b8152600481018290526001600160a01b0383169063a47d29cb90602401602060405180830381865afa158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd919061074e565b6001600160a01b0316336001600160a01b03161461050b5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b6044820152606401610394565b5050565b600061051e620f42408361076b565b92915050565b6040516001600160601b0319606084901b166020820152603481018290526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358fb597c90605401604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016105ad91815260200190565b6020604051808303816000875af11580156105cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f0919061078d565b9392505050565b6001600160a01b03828116600090815260026020908152604080832085845290915290205416331461050b5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79204861736820536565642053657474657220436f6e747261637400006044820152606401610394565b6001600160a01b038116811461068057600080fd5b50565b6000806040838503121561069657600080fd5b82356106a18161066b565b946020939093013593505050565b6000806000606084860312156106c457600080fd5b83356106cf8161066b565b92506020840135915060408401356106e68161066b565b809150509250925092565b60006020828403121561070357600080fd5b5035919050565b60008060006060848603121561071f57600080fd5b833561072a8161066b565b92506020840135915060408401356001600160a01b0319811681146106e657600080fd5b60006020828403121561076057600080fd5b81516105f08161066b565b60008261078857634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561079f57600080fd5b505191905056fea2646970667358221220ff7dcb586361ada8cbec0c58d78ec47205d64a2ff9ce40a5360c8c4d81d9624164736f6c63430008130033",
244
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100785760003560e01c80638f2a62c31461007d5780639f8ac23f146100cb578063a6db8cb614610119578063b1aea8c91461012e578063b310c79214610141578063b628171a14610168578063dddceed11461017b578063eaedc4231461018e575b600080fd5b6100b661008b366004610683565b6001600160a01b03919091166000908152600160209081526040808320938352929052205460ff1690565b60405190151581526020015b60405180910390f35b6101016100d9366004610683565b6001600160a01b03918216600090815260026020908152604080832093835292905220541690565b6040516001600160a01b0390911681526020016100c2565b61012c610127366004610683565b6101de565b005b61012c61013c3660046106af565b610260565b6101017f000000000000000000000000000000000000000000000000000000000000000081565b61012c6101763660046106f1565b6102cf565b61012c61018936600461070a565b610400565b6101c561019c366004610683565b6001600160a01b0391909116600090815260208181526040808320938352929052205460a01b90565b6040516001600160a01b031990911681526020016100c2565b6101e88282610454565b6001600160a01b0382166000818152600160209081526040808320858452825291829020805460ff19811660ff91821615908117909255835194855291840185905216151582820152517f459a9692be7991c0a9003b1503f8bae163cd2c99f35c952bf5b7b8d47629f6069181900360600190a15050565b61026a8383610454565b6001600160a01b03838116600081815260026020908152604080832087845290915280822080546001600160a01b0319169486169485179055518592917f3a32d746deba4ebe76a81771454e46f19940f56a24b0594a42356bcea6ac841491a4505050565b3360006102db8361050f565b6001600160a01b03831660009081526001602090815260408083208484529091528120549192509060ff161561034057506001600160a01b03821660009081526020818152604080832086845290915290205460a01b6001600160a01b03191661034d565b61034a8385610524565b90505b600081900361039d5760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b60448201526064015b60405180910390fd5b60405161078f60e21b815260048101859052602481018290526001600160a01b03841690611e3c90604401600060405180830381600087803b1580156103e257600080fd5b505af11580156103f6573d6000803e3d6000fd5b5050505050505050565b600061040b8361050f565b905061041784826105f7565b506001600160a01b03929092166000908152602081815260408083209383529290522080546001600160601b03191660a09290921c919091179055565b60405163a47d29cb60e01b8152600481018290526001600160a01b0383169063a47d29cb90602401602060405180830381865afa158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd919061074e565b6001600160a01b0316336001600160a01b03161461050b5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b6044820152606401610394565b5050565b600061051e620f42408361076b565b92915050565b6040516001600160601b0319606084901b166020820152603481018290526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358fb597c90605401604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016105ad91815260200190565b6020604051808303816000875af11580156105cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f0919061078d565b9392505050565b6001600160a01b03828116600090815260026020908152604080832085845290915290205416331461050b5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79204861736820536565642053657474657220436f6e747261637400006044820152606401610394565b6001600160a01b038116811461068057600080fd5b50565b6000806040838503121561069657600080fd5b82356106a18161066b565b946020939093013593505050565b6000806000606084860312156106c457600080fd5b83356106cf8161066b565b92506020840135915060408401356106e68161066b565b809150509250925092565b60006020828403121561070357600080fd5b5035919050565b60008060006060848603121561071f57600080fd5b833561072a8161066b565b92506020840135915060408401356001600160a01b0319811681146106e657600080fd5b60006020828403121561076057600080fd5b81516105f08161066b565b60008261078857634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561079f57600080fd5b505191905056fea2646970667358221220ff7dcb586361ada8cbec0c58d78ec47205d64a2ff9ce40a5360c8c4d81d9624164736f6c63430008130033",
243
+ "bytecode": "0x60a060405234801561001057600080fd5b5060405161089b38038061089b83398101604081905261002f9161006d565b6001600160a01b03811660808190526040517f2ad63d43bf15d4fb27447dac9430a7e357192317067d6a79f145ae0893867d2890600090a25061009d565b60006020828403121561007f57600080fd5b81516001600160a01b038116811461009657600080fd5b9392505050565b6080516107dc6100bf60003960008181610146015261054f01526107dc6000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c80638f2a62c31461007d5780639f8ac23f146100cb578063a6db8cb614610119578063b1aea8c91461012e578063b310c79214610141578063b628171a14610168578063dddceed11461017b578063eaedc4231461018e575b600080fd5b6100b661008b366004610683565b6001600160a01b03919091166000908152600160209081526040808320938352929052205460ff1690565b60405190151581526020015b60405180910390f35b6101016100d9366004610683565b6001600160a01b03918216600090815260026020908152604080832093835292905220541690565b6040516001600160a01b0390911681526020016100c2565b61012c610127366004610683565b6101de565b005b61012c61013c3660046106af565b610260565b6101017f000000000000000000000000000000000000000000000000000000000000000081565b61012c6101763660046106f1565b6102cf565b61012c61018936600461070a565b610400565b6101c561019c366004610683565b6001600160a01b0391909116600090815260208181526040808320938352929052205460a01b90565b6040516001600160a01b031990911681526020016100c2565b6101e88282610454565b6001600160a01b0382166000818152600160209081526040808320858452825291829020805460ff19811660ff91821615908117909255835194855291840185905216151582820152517f459a9692be7991c0a9003b1503f8bae163cd2c99f35c952bf5b7b8d47629f6069181900360600190a15050565b61026a8383610454565b6001600160a01b03838116600081815260026020908152604080832087845290915280822080546001600160a01b0319169486169485179055518592917f3a32d746deba4ebe76a81771454e46f19940f56a24b0594a42356bcea6ac841491a4505050565b3360006102db8361050f565b6001600160a01b03831660009081526001602090815260408083208484529091528120549192509060ff161561034057506001600160a01b03821660009081526020818152604080832086845290915290205460a01b6001600160a01b03191661034d565b61034a8385610524565b90505b600081900361039d5760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b60448201526064015b60405180910390fd5b60405161078f60e21b815260048101859052602481018290526001600160a01b03841690611e3c90604401600060405180830381600087803b1580156103e257600080fd5b505af11580156103f6573d6000803e3d6000fd5b5050505050505050565b600061040b8361050f565b905061041784826105f7565b506001600160a01b03929092166000908152602081815260408083209383529290522080546001600160601b03191660a09290921c919091179055565b60405163a47d29cb60e01b8152600481018290526001600160a01b0383169063a47d29cb90602401602060405180830381865afa158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd919061074e565b6001600160a01b0316336001600160a01b03161461050b5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b6044820152606401610394565b5050565b600061051e620f42408361076b565b92915050565b6040516001600160601b0319606084901b166020820152603481018290526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358fb597c90605401604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016105ad91815260200190565b6020604051808303816000875af11580156105cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f0919061078d565b9392505050565b6001600160a01b03828116600090815260026020908152604080832085845290915290205416331461050b5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79204861736820536565642053657474657220436f6e747261637400006044820152606401610394565b6001600160a01b038116811461068057600080fd5b50565b6000806040838503121561069657600080fd5b82356106a18161066b565b946020939093013593505050565b6000806000606084860312156106c457600080fd5b83356106cf8161066b565b92506020840135915060408401356106e68161066b565b809150509250925092565b60006020828403121561070357600080fd5b5035919050565b60008060006060848603121561071f57600080fd5b833561072a8161066b565b92506020840135915060408401356001600160a01b0319811681146106e657600080fd5b60006020828403121561076057600080fd5b81516105f08161066b565b60008261078857634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561079f57600080fd5b505191905056fea264697066735822122094aed664657c6f67982e78a6a3d655366d8d6562d3e1b1ff40e34913e8be3ee664736f6c63430008130033",
244
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100785760003560e01c80638f2a62c31461007d5780639f8ac23f146100cb578063a6db8cb614610119578063b1aea8c91461012e578063b310c79214610141578063b628171a14610168578063dddceed11461017b578063eaedc4231461018e575b600080fd5b6100b661008b366004610683565b6001600160a01b03919091166000908152600160209081526040808320938352929052205460ff1690565b60405190151581526020015b60405180910390f35b6101016100d9366004610683565b6001600160a01b03918216600090815260026020908152604080832093835292905220541690565b6040516001600160a01b0390911681526020016100c2565b61012c610127366004610683565b6101de565b005b61012c61013c3660046106af565b610260565b6101017f000000000000000000000000000000000000000000000000000000000000000081565b61012c6101763660046106f1565b6102cf565b61012c61018936600461070a565b610400565b6101c561019c366004610683565b6001600160a01b0391909116600090815260208181526040808320938352929052205460a01b90565b6040516001600160a01b031990911681526020016100c2565b6101e88282610454565b6001600160a01b0382166000818152600160209081526040808320858452825291829020805460ff19811660ff91821615908117909255835194855291840185905216151582820152517f459a9692be7991c0a9003b1503f8bae163cd2c99f35c952bf5b7b8d47629f6069181900360600190a15050565b61026a8383610454565b6001600160a01b03838116600081815260026020908152604080832087845290915280822080546001600160a01b0319169486169485179055518592917f3a32d746deba4ebe76a81771454e46f19940f56a24b0594a42356bcea6ac841491a4505050565b3360006102db8361050f565b6001600160a01b03831660009081526001602090815260408083208484529091528120549192509060ff161561034057506001600160a01b03821660009081526020818152604080832086845290915290205460a01b6001600160a01b03191661034d565b61034a8385610524565b90505b600081900361039d5760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b60448201526064015b60405180910390fd5b60405161078f60e21b815260048101859052602481018290526001600160a01b03841690611e3c90604401600060405180830381600087803b1580156103e257600080fd5b505af11580156103f6573d6000803e3d6000fd5b5050505050505050565b600061040b8361050f565b905061041784826105f7565b506001600160a01b03929092166000908152602081815260408083209383529290522080546001600160601b03191660a09290921c919091179055565b60405163a47d29cb60e01b8152600481018290526001600160a01b0383169063a47d29cb90602401602060405180830381865afa158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd919061074e565b6001600160a01b0316336001600160a01b03161461050b5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b6044820152606401610394565b5050565b600061051e620f42408361076b565b92915050565b6040516001600160601b0319606084901b166020820152603481018290526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358fb597c90605401604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016105ad91815260200190565b6020604051808303816000875af11580156105cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f0919061078d565b9392505050565b6001600160a01b03828116600090815260026020908152604080832085845290915290205416331461050b5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79204861736820536565642053657474657220436f6e747261637400006044820152606401610394565b6001600160a01b038116811461068057600080fd5b50565b6000806040838503121561069657600080fd5b82356106a18161066b565b946020939093013593505050565b6000806000606084860312156106c457600080fd5b83356106cf8161066b565b92506020840135915060408401356106e68161066b565b809150509250925092565b60006020828403121561070357600080fd5b5035919050565b60008060006060848603121561071f57600080fd5b833561072a8161066b565b92506020840135915060408401356001600160a01b0319811681146106e657600080fd5b60006020828403121561076057600080fd5b81516105f08161066b565b60008261078857634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561079f57600080fd5b505191905056fea264697066735822122094aed664657c6f67982e78a6a3d655366d8d6562d3e1b1ff40e34913e8be3ee664736f6c63430008130033",
245
245
  "linkReferences": {},
246
246
  "deployedLinkReferences": {}
247
247
  }
@@ -0,0 +1,101 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "RelayExecutor",
4
+ "sourceName": "contracts/relay/RelayExecutor.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "BatchOfBatchesDecodingError",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "inputs": [],
13
+ "name": "FnSelectorNotRecognized",
14
+ "type": "error"
15
+ },
16
+ {
17
+ "inputs": [],
18
+ "name": "UnsupportedExecutionMode",
19
+ "type": "error"
20
+ },
21
+ {
22
+ "anonymous": false,
23
+ "inputs": [],
24
+ "name": "BundleExecuted",
25
+ "type": "event"
26
+ },
27
+ {
28
+ "stateMutability": "payable",
29
+ "type": "fallback"
30
+ },
31
+ {
32
+ "inputs": [
33
+ {
34
+ "internalType": "bytes32",
35
+ "name": "mode",
36
+ "type": "bytes32"
37
+ },
38
+ {
39
+ "internalType": "bytes",
40
+ "name": "executionData",
41
+ "type": "bytes"
42
+ }
43
+ ],
44
+ "name": "execute",
45
+ "outputs": [],
46
+ "stateMutability": "payable",
47
+ "type": "function"
48
+ },
49
+ {
50
+ "inputs": [
51
+ {
52
+ "internalType": "bytes32",
53
+ "name": "hash",
54
+ "type": "bytes32"
55
+ },
56
+ {
57
+ "internalType": "bytes",
58
+ "name": "signature",
59
+ "type": "bytes"
60
+ }
61
+ ],
62
+ "name": "isValidSignature",
63
+ "outputs": [
64
+ {
65
+ "internalType": "bytes4",
66
+ "name": "result",
67
+ "type": "bytes4"
68
+ }
69
+ ],
70
+ "stateMutability": "view",
71
+ "type": "function"
72
+ },
73
+ {
74
+ "inputs": [
75
+ {
76
+ "internalType": "bytes32",
77
+ "name": "mode",
78
+ "type": "bytes32"
79
+ }
80
+ ],
81
+ "name": "supportsExecutionMode",
82
+ "outputs": [
83
+ {
84
+ "internalType": "bool",
85
+ "name": "result",
86
+ "type": "bool"
87
+ }
88
+ ],
89
+ "stateMutability": "view",
90
+ "type": "function"
91
+ },
92
+ {
93
+ "stateMutability": "payable",
94
+ "type": "receive"
95
+ }
96
+ ],
97
+ "bytecode": "0x608060405234801561001057600080fd5b506104db806100206000396000f3fe6080604052600436106100385760003560e01c80631626ba7e1461007a578063d03c7914146100b8578063e9ae5c53146100e85761003f565b3661003f57005b60003560e01c63bc197c81811463f23a6e6182141763150b7a028214171561006b57806020526020603cf35b50633c10b94e6000526004601cfd5b34801561008657600080fd5b5061009a610095366004610411565b6100fd565b6040516001600160e01b031990911681526020015b60405180910390f35b3480156100c457600080fd5b506100d86100d336600461048c565b610130565b60405190151581526020016100af565b6100fb6100f6366004610411565b610143565b005b6000803061010c8686866101ca565b6001600160a01b03161490508015600003631626ba7e1760e01b9150509392505050565b600061013b82610258565b151592915050565b600061014e84610258565b9050806003036101695761016384848461029b565b50505050565b3660003660008461018257637f1812756000526004601cfd5b5085358087016020810194503592506000906040116002861411156101b1575050602080860135860190810190355b6101c088888887878787610340565b5050505050505050565b600060405182604081146101e6576041811461020d5750610242565b60208581013560ff81901c601b0190915285356040526001600160ff1b031660605261021f565b604085013560001a6020526040856040375b5084600052602060016080600060015afa5191506000606052806040523d610250575b638baa579f6000526004601cfd5b509392505050565b6003690100000000007821000260b09290921c69ffff00000000ffffffff16918214026901000000000078210001821460011b600160481b909214919091171790565b600360b01b929092189181358083018035916020808301928686019291600586901b9091018101831090861017604082901c17156102e157633995943b6000526004601cfd5b5060005b838114610337573660008260051b850135808601602081019350803592505084828401118160401c171561032157633995943b6000526004601cfd5b5061032d898383610143565b50506001016102e5565b50505050505050565b806103625733301461035157600080fd5b61035d84846000610367565b610337565b600080fd5b8160005b818110156103bc57600581901b850135850180356001600160a01b03168015300217906020808201359160408101350190810190356103ad848484848b6103ec565b5050505080600101905061036b565b50506040517f3cd212f090a5afa720fa9d8b7cb228e36573798ebffb6530f847940f37bc1cd890600090a1505050565b604051828482376000388483888a5af1610409573d6000823e3d81fd5b505050505050565b60008060006040848603121561042657600080fd5b8335925060208401356001600160401b038082111561044457600080fd5b818601915086601f83011261045857600080fd5b81358181111561046757600080fd5b87602082850101111561047957600080fd5b6020830194508093505050509250925092565b60006020828403121561049e57600080fd5b503591905056fea26469706673582212203726017274c3b1a69cd0b9263ff22266599f767bc9473df8db9f9fb9fb3c291f64736f6c63430008160033",
98
+ "deployedBytecode": "0x6080604052600436106100385760003560e01c80631626ba7e1461007a578063d03c7914146100b8578063e9ae5c53146100e85761003f565b3661003f57005b60003560e01c63bc197c81811463f23a6e6182141763150b7a028214171561006b57806020526020603cf35b50633c10b94e6000526004601cfd5b34801561008657600080fd5b5061009a610095366004610411565b6100fd565b6040516001600160e01b031990911681526020015b60405180910390f35b3480156100c457600080fd5b506100d86100d336600461048c565b610130565b60405190151581526020016100af565b6100fb6100f6366004610411565b610143565b005b6000803061010c8686866101ca565b6001600160a01b03161490508015600003631626ba7e1760e01b9150509392505050565b600061013b82610258565b151592915050565b600061014e84610258565b9050806003036101695761016384848461029b565b50505050565b3660003660008461018257637f1812756000526004601cfd5b5085358087016020810194503592506000906040116002861411156101b1575050602080860135860190810190355b6101c088888887878787610340565b5050505050505050565b600060405182604081146101e6576041811461020d5750610242565b60208581013560ff81901c601b0190915285356040526001600160ff1b031660605261021f565b604085013560001a6020526040856040375b5084600052602060016080600060015afa5191506000606052806040523d610250575b638baa579f6000526004601cfd5b509392505050565b6003690100000000007821000260b09290921c69ffff00000000ffffffff16918214026901000000000078210001821460011b600160481b909214919091171790565b600360b01b929092189181358083018035916020808301928686019291600586901b9091018101831090861017604082901c17156102e157633995943b6000526004601cfd5b5060005b838114610337573660008260051b850135808601602081019350803592505084828401118160401c171561032157633995943b6000526004601cfd5b5061032d898383610143565b50506001016102e5565b50505050505050565b806103625733301461035157600080fd5b61035d84846000610367565b610337565b600080fd5b8160005b818110156103bc57600581901b850135850180356001600160a01b03168015300217906020808201359160408101350190810190356103ad848484848b6103ec565b5050505080600101905061036b565b50506040517f3cd212f090a5afa720fa9d8b7cb228e36573798ebffb6530f847940f37bc1cd890600090a1505050565b604051828482376000388483888a5af1610409573d6000823e3d81fd5b505050505050565b60008060006040848603121561042657600080fd5b8335925060208401356001600160401b038082111561044457600080fd5b818601915086601f83011261045857600080fd5b81358181111561046757600080fd5b87602082850101111561047957600080fd5b6020830194508093505050509250925092565b60006020828403121561049e57600080fd5b503591905056fea26469706673582212203726017274c3b1a69cd0b9263ff22266599f767bc9473df8db9f9fb9fb3c291f64736f6c63430008160033",
99
+ "linkReferences": {},
100
+ "deployedLinkReferences": {}
101
+ }
@@ -0,0 +1,120 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "RelayExecutorPartialReverts",
4
+ "sourceName": "contracts/relay/RelayExecutorPartialReverts.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "BatchOfBatchesDecodingError",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "inputs": [],
13
+ "name": "FnSelectorNotRecognized",
14
+ "type": "error"
15
+ },
16
+ {
17
+ "inputs": [],
18
+ "name": "UnsupportedExecutionMode",
19
+ "type": "error"
20
+ },
21
+ {
22
+ "anonymous": false,
23
+ "inputs": [],
24
+ "name": "BundleExecuted",
25
+ "type": "event"
26
+ },
27
+ {
28
+ "anonymous": false,
29
+ "inputs": [
30
+ {
31
+ "indexed": false,
32
+ "internalType": "uint256",
33
+ "name": "bundleIndex",
34
+ "type": "uint256"
35
+ },
36
+ {
37
+ "indexed": false,
38
+ "internalType": "bytes",
39
+ "name": "reason",
40
+ "type": "bytes"
41
+ }
42
+ ],
43
+ "name": "BundleFailed",
44
+ "type": "event"
45
+ },
46
+ {
47
+ "stateMutability": "payable",
48
+ "type": "fallback"
49
+ },
50
+ {
51
+ "inputs": [
52
+ {
53
+ "internalType": "bytes32",
54
+ "name": "mode",
55
+ "type": "bytes32"
56
+ },
57
+ {
58
+ "internalType": "bytes",
59
+ "name": "executionData",
60
+ "type": "bytes"
61
+ }
62
+ ],
63
+ "name": "execute",
64
+ "outputs": [],
65
+ "stateMutability": "payable",
66
+ "type": "function"
67
+ },
68
+ {
69
+ "inputs": [
70
+ {
71
+ "internalType": "bytes32",
72
+ "name": "hash",
73
+ "type": "bytes32"
74
+ },
75
+ {
76
+ "internalType": "bytes",
77
+ "name": "signature",
78
+ "type": "bytes"
79
+ }
80
+ ],
81
+ "name": "isValidSignature",
82
+ "outputs": [
83
+ {
84
+ "internalType": "bytes4",
85
+ "name": "result",
86
+ "type": "bytes4"
87
+ }
88
+ ],
89
+ "stateMutability": "view",
90
+ "type": "function"
91
+ },
92
+ {
93
+ "inputs": [
94
+ {
95
+ "internalType": "bytes32",
96
+ "name": "mode",
97
+ "type": "bytes32"
98
+ }
99
+ ],
100
+ "name": "supportsExecutionMode",
101
+ "outputs": [
102
+ {
103
+ "internalType": "bool",
104
+ "name": "result",
105
+ "type": "bool"
106
+ }
107
+ ],
108
+ "stateMutability": "view",
109
+ "type": "function"
110
+ },
111
+ {
112
+ "stateMutability": "payable",
113
+ "type": "receive"
114
+ }
115
+ ],
116
+ "bytecode": "0x608060405234801561001057600080fd5b5061062a806100206000396000f3fe6080604052600436106100385760003560e01c80631626ba7e1461007a578063d03c7914146100b8578063e9ae5c53146100e85761003f565b3661003f57005b60003560e01c63bc197c81811463f23a6e6182141763150b7a028214171561006b57806020526020603cf35b50633c10b94e6000526004601cfd5b34801561008657600080fd5b5061009a6100953660046104d3565b6100fd565b6040516001600160e01b031990911681526020015b60405180910390f35b3480156100c457600080fd5b506100d86100d336600461054e565b610130565b60405190151581526020016100af565b6100fb6100f63660046104d3565b610143565b005b6000803061010c8686866101ca565b6001600160a01b03161490508015600003631626ba7e1760e01b9150509392505050565b600061013b82610258565b151592915050565b600061014e84610258565b9050806003036101695761016384848461029b565b50505050565b3660003660008461018257637f1812756000526004601cfd5b5085358087016020810194503592506000906040116002861411156101b1575050602080860135860190810190355b6101c088888887878787610402565b5050505050505050565b600060405182604081146101e6576041811461020d5750610242565b60208581013560ff81901c601b0190915285356040526001600160ff1b031660605261021f565b604085013560001a6020526040856040375b5084600052602060016080600060015afa5191506000606052806040523d610250575b638baa579f6000526004601cfd5b509392505050565b6003690100000000007821000260b09290921c69ffff00000000ffffffff16918214026901000000000078210001821460011b600160481b909214919091171790565b3330146102a757600080fd5b600360b01b929092189181358083018035916020808301928686019291600586901b9091018101831090861017604082901c17156102ed57633995943b6000526004601cfd5b5060005b8381146103f9573660008260051b850135808601602081019350803592505084828401118160401c171561032d57633995943b6000526004601cfd5b5060405163e9ae5c5360e01b8152309063e9ae5c5390610355908c9086908690600401610567565b600060405180830381600087803b15801561036f57600080fd5b505af1925050508015610380575060015b6103ef573d8080156103ae576040519150601f19603f3d011682016040523d82523d6000602084013e6103b3565b606091505b507f51b0d29d57f6cf6b387e59b07521997626a7a4318afd6762fac2cb6a82867f5384826040516103e592919061059d565b60405180910390a1505b50506001016102f1565b50505050505050565b806104245733301461041357600080fd5b61041f84846000610429565b6103f9565b600080fd5b8160005b8181101561047e57600581901b850135850180356001600160a01b031680153002179060208082013591604081013501908101903561046f848484848b6104ae565b5050505080600101905061042d565b50506040517f3cd212f090a5afa720fa9d8b7cb228e36573798ebffb6530f847940f37bc1cd890600090a1505050565b604051828482376000388483888a5af16104cb573d6000823e3d81fd5b505050505050565b6000806000604084860312156104e857600080fd5b8335925060208401356001600160401b038082111561050657600080fd5b818601915086601f83011261051a57600080fd5b81358181111561052957600080fd5b87602082850101111561053b57600080fd5b6020830194508093505050509250925092565b60006020828403121561056057600080fd5b5035919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b8281526000602060406020840152835180604085015260005b818110156105d2578581018301518582016060015282016105b6565b506000606082860101526060601f19601f83011685010192505050939250505056fea264697066735822122013378d5b1b59dc4f0dec056dd31d896ffcfed74f4abede3561be61895605e35e64736f6c63430008160033",
117
+ "deployedBytecode": "0x6080604052600436106100385760003560e01c80631626ba7e1461007a578063d03c7914146100b8578063e9ae5c53146100e85761003f565b3661003f57005b60003560e01c63bc197c81811463f23a6e6182141763150b7a028214171561006b57806020526020603cf35b50633c10b94e6000526004601cfd5b34801561008657600080fd5b5061009a6100953660046104d3565b6100fd565b6040516001600160e01b031990911681526020015b60405180910390f35b3480156100c457600080fd5b506100d86100d336600461054e565b610130565b60405190151581526020016100af565b6100fb6100f63660046104d3565b610143565b005b6000803061010c8686866101ca565b6001600160a01b03161490508015600003631626ba7e1760e01b9150509392505050565b600061013b82610258565b151592915050565b600061014e84610258565b9050806003036101695761016384848461029b565b50505050565b3660003660008461018257637f1812756000526004601cfd5b5085358087016020810194503592506000906040116002861411156101b1575050602080860135860190810190355b6101c088888887878787610402565b5050505050505050565b600060405182604081146101e6576041811461020d5750610242565b60208581013560ff81901c601b0190915285356040526001600160ff1b031660605261021f565b604085013560001a6020526040856040375b5084600052602060016080600060015afa5191506000606052806040523d610250575b638baa579f6000526004601cfd5b509392505050565b6003690100000000007821000260b09290921c69ffff00000000ffffffff16918214026901000000000078210001821460011b600160481b909214919091171790565b3330146102a757600080fd5b600360b01b929092189181358083018035916020808301928686019291600586901b9091018101831090861017604082901c17156102ed57633995943b6000526004601cfd5b5060005b8381146103f9573660008260051b850135808601602081019350803592505084828401118160401c171561032d57633995943b6000526004601cfd5b5060405163e9ae5c5360e01b8152309063e9ae5c5390610355908c9086908690600401610567565b600060405180830381600087803b15801561036f57600080fd5b505af1925050508015610380575060015b6103ef573d8080156103ae576040519150601f19603f3d011682016040523d82523d6000602084013e6103b3565b606091505b507f51b0d29d57f6cf6b387e59b07521997626a7a4318afd6762fac2cb6a82867f5384826040516103e592919061059d565b60405180910390a1505b50506001016102f1565b50505050505050565b806104245733301461041357600080fd5b61041f84846000610429565b6103f9565b600080fd5b8160005b8181101561047e57600581901b850135850180356001600160a01b031680153002179060208082013591604081013501908101903561046f848484848b6104ae565b5050505080600101905061042d565b50506040517f3cd212f090a5afa720fa9d8b7cb228e36573798ebffb6530f847940f37bc1cd890600090a1505050565b604051828482376000388483888a5af16104cb573d6000823e3d81fd5b505050505050565b6000806000604084860312156104e857600080fd5b8335925060208401356001600160401b038082111561050657600080fd5b818601915086601f83011261051a57600080fd5b81358181111561052957600080fd5b87602082850101111561053b57600080fd5b6020830194508093505050509250925092565b60006020828403121561056057600080fd5b5035919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b8281526000602060406020840152835180604085015260005b818110156105d2578581018301518582016060015282016105b6565b506000606082860101526060601f19601f83011685010192505050939250505056fea264697066735822122013378d5b1b59dc4f0dec056dd31d896ffcfed74f4abede3561be61895605e35e64736f6c63430008160033",
118
+ "linkReferences": {},
119
+ "deployedLinkReferences": {}
120
+ }
@@ -0,0 +1,263 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "GenArt721RoyaltyOverrideSplits",
4
+ "sourceName": "contracts/royalty-registry/GenArt721RoyaltyOverrideSplits.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "owner_",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "stateMutability": "nonpayable",
15
+ "type": "constructor"
16
+ },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "address",
21
+ "name": "owner",
22
+ "type": "address"
23
+ }
24
+ ],
25
+ "name": "OwnableInvalidOwner",
26
+ "type": "error"
27
+ },
28
+ {
29
+ "inputs": [
30
+ {
31
+ "internalType": "address",
32
+ "name": "account",
33
+ "type": "address"
34
+ }
35
+ ],
36
+ "name": "OwnableUnauthorizedAccount",
37
+ "type": "error"
38
+ },
39
+ {
40
+ "anonymous": false,
41
+ "inputs": [
42
+ {
43
+ "indexed": true,
44
+ "internalType": "address",
45
+ "name": "previousOwner",
46
+ "type": "address"
47
+ },
48
+ {
49
+ "indexed": true,
50
+ "internalType": "address",
51
+ "name": "newOwner",
52
+ "type": "address"
53
+ }
54
+ ],
55
+ "name": "OwnershipTransferred",
56
+ "type": "event"
57
+ },
58
+ {
59
+ "anonymous": false,
60
+ "inputs": [
61
+ {
62
+ "indexed": true,
63
+ "internalType": "address",
64
+ "name": "coreContract",
65
+ "type": "address"
66
+ },
67
+ {
68
+ "indexed": true,
69
+ "internalType": "uint256",
70
+ "name": "projectId",
71
+ "type": "uint256"
72
+ },
73
+ {
74
+ "indexed": false,
75
+ "internalType": "address",
76
+ "name": "splitter",
77
+ "type": "address"
78
+ },
79
+ {
80
+ "indexed": false,
81
+ "internalType": "uint16",
82
+ "name": "bps",
83
+ "type": "uint16"
84
+ }
85
+ ],
86
+ "name": "RoyaltyConfigUpdated",
87
+ "type": "event"
88
+ },
89
+ {
90
+ "inputs": [],
91
+ "name": "MAX_BPS",
92
+ "outputs": [
93
+ {
94
+ "internalType": "uint16",
95
+ "name": "",
96
+ "type": "uint16"
97
+ }
98
+ ],
99
+ "stateMutability": "view",
100
+ "type": "function"
101
+ },
102
+ {
103
+ "inputs": [
104
+ {
105
+ "internalType": "address",
106
+ "name": "tokenAddress",
107
+ "type": "address"
108
+ },
109
+ {
110
+ "internalType": "uint256",
111
+ "name": "tokenId",
112
+ "type": "uint256"
113
+ }
114
+ ],
115
+ "name": "getRoyalties",
116
+ "outputs": [
117
+ {
118
+ "internalType": "address payable[]",
119
+ "name": "recipients_",
120
+ "type": "address[]"
121
+ },
122
+ {
123
+ "internalType": "uint256[]",
124
+ "name": "bps",
125
+ "type": "uint256[]"
126
+ }
127
+ ],
128
+ "stateMutability": "view",
129
+ "type": "function"
130
+ },
131
+ {
132
+ "inputs": [],
133
+ "name": "owner",
134
+ "outputs": [
135
+ {
136
+ "internalType": "address",
137
+ "name": "",
138
+ "type": "address"
139
+ }
140
+ ],
141
+ "stateMutability": "view",
142
+ "type": "function"
143
+ },
144
+ {
145
+ "inputs": [
146
+ {
147
+ "internalType": "address",
148
+ "name": "coreContract",
149
+ "type": "address"
150
+ },
151
+ {
152
+ "internalType": "uint256",
153
+ "name": "projectId",
154
+ "type": "uint256"
155
+ }
156
+ ],
157
+ "name": "removeRoyaltyConfig",
158
+ "outputs": [],
159
+ "stateMutability": "nonpayable",
160
+ "type": "function"
161
+ },
162
+ {
163
+ "inputs": [],
164
+ "name": "renounceOwnership",
165
+ "outputs": [],
166
+ "stateMutability": "nonpayable",
167
+ "type": "function"
168
+ },
169
+ {
170
+ "inputs": [
171
+ {
172
+ "internalType": "address",
173
+ "name": "coreContract",
174
+ "type": "address"
175
+ },
176
+ {
177
+ "internalType": "uint256",
178
+ "name": "projectId",
179
+ "type": "uint256"
180
+ }
181
+ ],
182
+ "name": "royaltyConfigs",
183
+ "outputs": [
184
+ {
185
+ "internalType": "address",
186
+ "name": "splitter",
187
+ "type": "address"
188
+ },
189
+ {
190
+ "internalType": "uint16",
191
+ "name": "bps",
192
+ "type": "uint16"
193
+ }
194
+ ],
195
+ "stateMutability": "view",
196
+ "type": "function"
197
+ },
198
+ {
199
+ "inputs": [
200
+ {
201
+ "internalType": "address",
202
+ "name": "coreContract",
203
+ "type": "address"
204
+ },
205
+ {
206
+ "internalType": "uint256",
207
+ "name": "projectId",
208
+ "type": "uint256"
209
+ },
210
+ {
211
+ "internalType": "address",
212
+ "name": "splitter",
213
+ "type": "address"
214
+ },
215
+ {
216
+ "internalType": "uint16",
217
+ "name": "bps",
218
+ "type": "uint16"
219
+ }
220
+ ],
221
+ "name": "setRoyaltyConfig",
222
+ "outputs": [],
223
+ "stateMutability": "nonpayable",
224
+ "type": "function"
225
+ },
226
+ {
227
+ "inputs": [
228
+ {
229
+ "internalType": "bytes4",
230
+ "name": "interfaceId",
231
+ "type": "bytes4"
232
+ }
233
+ ],
234
+ "name": "supportsInterface",
235
+ "outputs": [
236
+ {
237
+ "internalType": "bool",
238
+ "name": "",
239
+ "type": "bool"
240
+ }
241
+ ],
242
+ "stateMutability": "view",
243
+ "type": "function"
244
+ },
245
+ {
246
+ "inputs": [
247
+ {
248
+ "internalType": "address",
249
+ "name": "newOwner",
250
+ "type": "address"
251
+ }
252
+ ],
253
+ "name": "transferOwnership",
254
+ "outputs": [],
255
+ "stateMutability": "nonpayable",
256
+ "type": "function"
257
+ }
258
+ ],
259
+ "bytecode": "0x608060405234801561001057600080fd5b506040516108b13803806108b183398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b6107b4806100fd6000396000f3fe608060405234801561001057600080fd5b50600436106100835760003560e01c806301ffc9a7146100885780631674eac8146100b05780636da781a9146100c5578063715018a6146101145780638da5cb5b1461011c5780639ca7dc7a14610131578063be786e0714610152578063f2fde38b14610165578063fd967f4714610178575b600080fd5b61009b610096366004610589565b610194565b60405190151581526020015b60405180910390f35b6100c36100be3660046105d6565b6101cb565b005b6101066100d33660046105d6565b60016020908152600092835260408084209091529082529020546001600160a01b03811690600160a01b900461ffff1682565b6040516100a7929190610600565b6100c3610231565b610124610245565b6040516100a7919061061d565b61014461013f3660046105d6565b610254565b6040516100a7929190610631565b6100c36101603660046106b5565b610385565b6100c361017336600461070b565b6104ba565b61018161271081565b60405161ffff90911681526020016100a7565b60006001600160e01b03198216634e53ee3d60e11b14806101c557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6101d36104f8565b6001600160a01b038216600081815260016020908152604080832085845290915280822080546001600160b01b03191690555183929160008051602061075f8339815191529161022591908190610600565b60405180910390a35050565b6102396104f8565b610243600061052a565b565b6000546001600160a01b031690565b60608060006102628461057a565b6001600160a01b0380871660009081526001602090815260408083208584529091529020805492935091166102d65760405162461bcd60e51b8152602060048201526015602482015274139bc81c9bde585b1d1e4818dbdb999a59dd5c9959605a1b60448201526064015b60405180910390fd5b604080516001808252818301909252906020808301908036833750506040805160018082528183019092529296509050602080830190803683375050825486519295506001600160a01b03169186915060009061033557610335610726565b6001600160a01b03929092166020928302919091019091015280548351600160a01b90910461ffff1690849060009061037057610370610726565b60200260200101818152505050509250929050565b61038d6104f8565b6001600160a01b0382166103de5760405162461bcd60e51b81526020600482015260186024820152774d757374206e6f74206265207a65726f206164647265737360401b60448201526064016102cd565b61271061ffff821611156104265760405162461bcd60e51b815260206004820152600f60248201526e45786365656473206d61782042505360881b60448201526064016102cd565b6040805180820182526001600160a01b03808516825261ffff80851660208085019182528984166000818152600183528781208b825290925290869020945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155905184919060008051602061075f833981519152906104ac9086908690610600565b60405180910390a350505050565b6104c26104f8565b6001600160a01b0381166104ec576000604051631e4fbdf760e01b81526004016102cd919061061d565b6104f58161052a565b50565b33610501610245565b6001600160a01b031614610243573360405163118cdaa760e01b81526004016102cd919061061d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006101c5620f42408361073c565b60006020828403121561059b57600080fd5b81356001600160e01b0319811681146105b357600080fd5b9392505050565b80356001600160a01b03811681146105d157600080fd5b919050565b600080604083850312156105e957600080fd5b6105f2836105ba565b946020939093013593505050565b6001600160a01b0392909216825261ffff16602082015260400190565b6001600160a01b0391909116815260200190565b604080825283519082018190526000906020906060840190828701845b828110156106735781516001600160a01b03168452928401929084019060010161064e565b5050508381038285015284518082528583019183019060005b818110156106a85783518352928401929184019160010161068c565b5090979650505050505050565b600080600080608085870312156106cb57600080fd5b6106d4856105ba565b9350602085013592506106e9604086016105ba565b9150606085013561ffff8116811461070057600080fd5b939692955090935050565b60006020828403121561071d57600080fd5b6105b3826105ba565b634e487b7160e01b600052603260045260246000fd5b60008261075957634e487b7160e01b600052601260045260246000fd5b50049056fe694eeae81ed91d199dfb1d2ad0e3aa0a6b2427a5881137330d0d67f3f321cf62a2646970667358221220ee9c98611702d25f0758ca987df4c4cb8c61da9c9f5772fee6e762e9e922126e64736f6c63430008160033",
260
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100835760003560e01c806301ffc9a7146100885780631674eac8146100b05780636da781a9146100c5578063715018a6146101145780638da5cb5b1461011c5780639ca7dc7a14610131578063be786e0714610152578063f2fde38b14610165578063fd967f4714610178575b600080fd5b61009b610096366004610589565b610194565b60405190151581526020015b60405180910390f35b6100c36100be3660046105d6565b6101cb565b005b6101066100d33660046105d6565b60016020908152600092835260408084209091529082529020546001600160a01b03811690600160a01b900461ffff1682565b6040516100a7929190610600565b6100c3610231565b610124610245565b6040516100a7919061061d565b61014461013f3660046105d6565b610254565b6040516100a7929190610631565b6100c36101603660046106b5565b610385565b6100c361017336600461070b565b6104ba565b61018161271081565b60405161ffff90911681526020016100a7565b60006001600160e01b03198216634e53ee3d60e11b14806101c557506301ffc9a760e01b6001600160e01b03198316145b92915050565b6101d36104f8565b6001600160a01b038216600081815260016020908152604080832085845290915280822080546001600160b01b03191690555183929160008051602061075f8339815191529161022591908190610600565b60405180910390a35050565b6102396104f8565b610243600061052a565b565b6000546001600160a01b031690565b60608060006102628461057a565b6001600160a01b0380871660009081526001602090815260408083208584529091529020805492935091166102d65760405162461bcd60e51b8152602060048201526015602482015274139bc81c9bde585b1d1e4818dbdb999a59dd5c9959605a1b60448201526064015b60405180910390fd5b604080516001808252818301909252906020808301908036833750506040805160018082528183019092529296509050602080830190803683375050825486519295506001600160a01b03169186915060009061033557610335610726565b6001600160a01b03929092166020928302919091019091015280548351600160a01b90910461ffff1690849060009061037057610370610726565b60200260200101818152505050509250929050565b61038d6104f8565b6001600160a01b0382166103de5760405162461bcd60e51b81526020600482015260186024820152774d757374206e6f74206265207a65726f206164647265737360401b60448201526064016102cd565b61271061ffff821611156104265760405162461bcd60e51b815260206004820152600f60248201526e45786365656473206d61782042505360881b60448201526064016102cd565b6040805180820182526001600160a01b03808516825261ffff80851660208085019182528984166000818152600183528781208b825290925290869020945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155905184919060008051602061075f833981519152906104ac9086908690610600565b60405180910390a350505050565b6104c26104f8565b6001600160a01b0381166104ec576000604051631e4fbdf760e01b81526004016102cd919061061d565b6104f58161052a565b50565b33610501610245565b6001600160a01b031614610243573360405163118cdaa760e01b81526004016102cd919061061d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006101c5620f42408361073c565b60006020828403121561059b57600080fd5b81356001600160e01b0319811681146105b357600080fd5b9392505050565b80356001600160a01b03811681146105d157600080fd5b919050565b600080604083850312156105e957600080fd5b6105f2836105ba565b946020939093013593505050565b6001600160a01b0392909216825261ffff16602082015260400190565b6001600160a01b0391909116815260200190565b604080825283519082018190526000906020906060840190828701845b828110156106735781516001600160a01b03168452928401929084019060010161064e565b5050508381038285015284518082528583019183019060005b818110156106a85783518352928401929184019160010161068c565b5090979650505050505050565b600080600080608085870312156106cb57600080fd5b6106d4856105ba565b9350602085013592506106e9604086016105ba565b9150606085013561ffff8116811461070057600080fd5b939692955090935050565b60006020828403121561071d57600080fd5b6105b3826105ba565b634e487b7160e01b600052603260045260246000fd5b60008261075957634e487b7160e01b600052601260045260246000fd5b50049056fe694eeae81ed91d199dfb1d2ad0e3aa0a6b2427a5881137330d0d67f3f321cf62a2646970667358221220ee9c98611702d25f0758ca987df4c4cb8c61da9c9f5772fee6e762e9e922126e64736f6c63430008160033",
261
+ "linkReferences": {},
262
+ "deployedLinkReferences": {}
263
+ }