@artblocks/contracts 1.1.0 → 1.2.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 (257) hide show
  1. package/README.md +75 -7
  2. package/artifacts/contracts/AdminACLV0.sol/AdminACLV0.json +2 -2
  3. package/artifacts/contracts/AdminACLV1.sol/AdminACLV1.json +2 -2
  4. package/artifacts/contracts/DependencyRegistryV0.sol/DependencyRegistryV0.json +273 -155
  5. package/artifacts/contracts/archive/GenArt721CoreV3.sol/GenArt721CoreV3.json +2047 -0
  6. package/artifacts/contracts/archive/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +2021 -0
  7. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterBase_v0_1_1.sol/MinterBase.json +1 -1
  8. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol/MinterDAExpV2.json +2 -2
  9. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol/MinterDAExpV3.json +2 -2
  10. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterDAExp}/MinterDAExpV4.sol/MinterDAExpV4.json +3 -3
  11. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +2 -2
  12. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +2 -2
  13. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterDAExpSettlement}/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +3 -3
  14. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol/MinterDALinV2.json +2 -2
  15. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol/MinterDALinV3.json +2 -2
  16. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterDALin}/MinterDALinV4.sol/MinterDALinV4.json +3 -3
  17. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol/MinterHolderV1.json +2 -2
  18. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +2 -2
  19. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol/MinterHolderV3.json +2 -2
  20. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterHolder}/MinterHolderV4.sol/MinterHolderV4.json +3 -3
  21. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol/MinterMerkleV1.json +2 -2
  22. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol/MinterMerkleV2.json +2 -2
  23. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol/MinterMerkleV3.json +2 -2
  24. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol/MinterMerkleV4.json +2 -2
  25. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterMerkle}/MinterMerkleV5.sol/MinterMerkleV5.json +3 -3
  26. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterPolyptych}/MinterPolyptychV0.sol/IGenArt721CoreContractV3WithRandomizer.json +31 -63
  27. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterPolyptych}/MinterPolyptychV0.sol/MinterPolyptychV0.json +3 -3
  28. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterSEA}/MinterSEAV0.sol/MinterSEAV0.json +3 -3
  29. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +2 -2
  30. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +2 -2
  31. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterSetPrice}/MinterSetPriceV4.sol/MinterSetPriceV4.json +3 -3
  32. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V0.sol/MinterSetPriceERC20V0.json +65 -2
  33. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V1.sol/MinterSetPriceERC20V1.json +65 -2
  34. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +2 -2
  35. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +2 -2
  36. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +807 -0
  37. package/artifacts/contracts/engine/V2/GenArt721MinterBurner_PBAB.sol/GenArt721MinterBurner_PBAB.json +65 -2
  38. package/artifacts/contracts/engine/V2/GenArt721Minter_PBAB.sol/GenArt721Minter_PBAB.json +65 -2
  39. package/artifacts/contracts/engine/V3/EngineFactoryV0.sol/EngineFactoryV0.json +606 -0
  40. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +567 -206
  41. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +787 -224
  42. package/artifacts/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol/GenArt721CoreV3_Engine_Flex_PROOF.json +38 -8
  43. package/artifacts/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol/AdminACLV0_PROHIBITION.json +2 -2
  44. package/artifacts/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol/GenArt721CoreV3_Engine_Flex_PROHIBITION.json +38 -8
  45. package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.json +36 -68
  46. package/artifacts/contracts/interfaces/v0.8.x/IAdminACLV0_Extended.sol/IAdminACLV0_Extended.json +140 -0
  47. package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReaderV2.sol/IBytecodeStorageReaderV2.json +130 -0
  48. package/artifacts/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol/IDependencyRegistryV0.json +58 -45
  49. package/artifacts/contracts/interfaces/v0.8.x/IEngineFactoryV0.sol/IEngineFactoryV0.json +283 -0
  50. package/artifacts/contracts/interfaces/v0.8.x/IFilteredMinterDAExpSettlementV0.sol/IFilteredMinterDAExpSettlementV0.json +12 -12
  51. package/artifacts/contracts/interfaces/v0.8.x/IFilteredMinterDAExpSettlementV1.sol/IFilteredMinterDAExpSettlementV1.json +12 -12
  52. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +30 -62
  53. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +30 -62
  54. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +170 -104
  55. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +170 -104
  56. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.sol/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.json +1028 -0
  57. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_PreV3p2.sol/IGenArt721CoreContractV3_Engine_PreV3p2.json +741 -0
  58. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_ProjectFinance.sol/IGenArt721CoreContractV3_ProjectFinance.json +87 -0
  59. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721Minter_PBAB.sol/IGenArt721Minter_PBAB.json +279 -0
  60. package/artifacts/contracts/interfaces/v0.8.x/IPseudorandomAtomic.sol/IPseudorandomAtomic.json +1 -1
  61. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDAExpSettlementV0.sol/ISharedMinterDAExpSettlementV0.json +18 -0
  62. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterRAMV0.sol/ISharedMinterRAMV0.json +62 -0
  63. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterRequired.sol/ISharedMinterRequired.json +37 -0
  64. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterSEAV0.sol/ISharedMinterSEAV0.json +1 -1
  65. package/artifacts/contracts/interfaces/v0.8.x/ISplitAtomicFactoryV0.sol/ISplitAtomicFactoryV0.json +170 -0
  66. package/artifacts/contracts/interfaces/v0.8.x/ISplitAtomicV0.sol/ISplitAtomicV0.json +126 -0
  67. package/artifacts/contracts/interfaces/v0.8.x/ISplitProviderV0.sol/ISplitProviderV0.json +98 -0
  68. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/splits-0x-v2/ISplitFactoryV2.sol/ISplitFactoryV2.json +123 -0
  69. package/artifacts/contracts/libs/integration-refs/delegation-registry/DelegationRegistry.sol/DelegationRegistry.json +2 -2
  70. package/artifacts/contracts/libs/integration-refs/gnosis-safe/GnosisSafeMock.sol/GnosisSafeMock.json +2 -2
  71. package/artifacts/contracts/libs/integration-refs/gnosis-safe/GnosisSafeProxyFactoryMock.sol/GnosisSafeProxyFactoryMock.json +2 -2
  72. package/artifacts/contracts/libs/integration-refs/gnosis-safe/MultiSendMock.sol/MultiSendMock.json +2 -2
  73. package/artifacts/contracts/libs/integration-refs/weth9/weth9.sol/WETH9_.json +2 -2
  74. package/artifacts/contracts/libs/v0.8.x/ABHelpers.sol/ABHelpers.json +2 -2
  75. package/artifacts/contracts/libs/v0.8.x/AuthLib.sol/AuthLib.json +2 -2
  76. package/artifacts/contracts/libs/v0.8.x/BitMap.sol/BitMaps256.json +10 -0
  77. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV0.sol/BytecodeStorage.json +2 -2
  78. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV1.sol/BytecodeStorageReader.json +2 -2
  79. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV1.sol/BytecodeStorageWriter.json +2 -2
  80. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV2.sol/BytecodeStorageReader.json +214 -0
  81. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV2.sol/BytecodeStorageWriter.json +10 -0
  82. package/artifacts/contracts/libs/v0.8.x/Bytes32Strings.sol/Bytes32Strings.json +2 -2
  83. package/artifacts/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol/DependencyRegistryStorageLib.json +10 -0
  84. package/artifacts/contracts/libs/v0.8.x/ERC721_PackedHashSeed.sol/ERC721_PackedHashSeed.json +2 -2
  85. package/artifacts/contracts/libs/v0.8.x/ERC721_PackedHashSeedV1.sol/ERC721_PackedHashSeedV1.json +444 -0
  86. package/artifacts/contracts/libs/v0.8.x/PackedBools.sol/PackedBools.json +10 -0
  87. package/artifacts/contracts/libs/v0.8.x/SSTORE2.sol/SSTORE2.json +2 -2
  88. package/artifacts/contracts/libs/v0.8.x/V3FlexLib.sol/V3FlexLib.json +208 -0
  89. package/artifacts/contracts/libs/v0.8.x/minter-libs/DAExpLib.sol/DAExpLib.json +2 -2
  90. package/artifacts/contracts/libs/v0.8.x/minter-libs/DALib.sol/DALib.json +2 -2
  91. package/artifacts/contracts/libs/v0.8.x/minter-libs/DALinLib.sol/DALinLib.json +2 -2
  92. package/artifacts/contracts/libs/v0.8.x/minter-libs/GenericMinterEventsLib.sol/GenericMinterEventsLib.json +2 -2
  93. package/artifacts/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol/MaxInvocationsLib.json +2 -2
  94. package/artifacts/contracts/libs/v0.8.x/minter-libs/MerkleLib.sol/MerkleLib.json +2 -2
  95. package/artifacts/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol/PolyptychLib.json +2 -2
  96. package/artifacts/contracts/libs/v0.8.x/minter-libs/RAMLib.sol/RAMLib.json +398 -0
  97. package/artifacts/contracts/libs/v0.8.x/minter-libs/SEALib.sol/SEALib.json +2 -2
  98. package/artifacts/contracts/libs/v0.8.x/minter-libs/SetPriceLib.sol/SetPriceLib.json +2 -2
  99. package/artifacts/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol/SettlementExpLib.json +2 -2
  100. package/artifacts/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol/SplitFundsLib.json +2 -2
  101. package/artifacts/contracts/libs/v0.8.x/minter-libs/TokenHolderLib.sol/TokenHolderLib.json +2 -2
  102. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +2 -2
  103. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV2.sol/MinterFilterV2.json +2 -2
  104. package/artifacts/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol/MinterDAExpHolderV5.json +2 -2
  105. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol/MinterDAExpSettlementV3.json +2 -2
  106. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV5.sol/MinterDAExpV5.json +2 -2
  107. package/artifacts/contracts/minter-suite/Minters/MinterDALinHolderV5.sol/MinterDALinHolderV5.json +2 -2
  108. package/artifacts/contracts/minter-suite/Minters/MinterDALinV5.sol/MinterDALinV5.json +2 -2
  109. package/artifacts/contracts/minter-suite/Minters/MinterRAMV0.sol/MinterRAMV0.json +1374 -0
  110. package/artifacts/contracts/minter-suite/Minters/MinterSEAV1.sol/MinterSEAV1.json +7 -7
  111. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol/MinterSetPriceERC20V5.json +2 -2
  112. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol/MinterSetPriceHolderV5.json +2 -2
  113. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol/MinterSetPriceMerkleV5.json +2 -2
  114. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol/MinterSetPricePolyptychERC20V5.json +2 -2
  115. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol/MinterSetPricePolyptychV5.json +2 -2
  116. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV5.sol/MinterSetPriceV5.json +2 -2
  117. package/artifacts/contracts/minter-suite/Minters/one-off/MinterSetPriceV5_SingleCore.sol/MinterSetPriceV5_SingleCore.json +417 -0
  118. package/artifacts/contracts/mock/BytecodeV2LibCallsMock.sol/BytecodeV2LibCallsMock.json +154 -0
  119. package/artifacts/contracts/mock/BytecodeV2TextCR_DMock.sol/BytecodeV2TextCR_DMock.json +428 -0
  120. package/artifacts/contracts/mock/DummySharedMinter.sol/DummySharedMinter.json +2 -2
  121. package/artifacts/contracts/mock/ERC20Mock.sol/ERC20Mock.json +2 -2
  122. package/artifacts/contracts/mock/ForceSendMock.sol/ForceSendMock.json +24 -0
  123. package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +2 -2
  124. package/artifacts/contracts/mock/Mock0xSplitsV2PullFactory.sol/Mock0xSplitsV2PullFactory.json +149 -0
  125. package/artifacts/contracts/mock/Mock0xSplitsV2Splitter.sol/Mock0xSplitsV2Splitter.json +99 -0
  126. package/artifacts/contracts/mock/MockAdminACLV0.sol/MockAdminACLV0Events.json +20 -2
  127. package/artifacts/contracts/mock/MockAdminACLV0_PROHIBITION.sol/MockAdminACLV0Events_PROHIBITION.json +20 -2
  128. package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +2 -2
  129. package/artifacts/contracts/mock/ReentrancyGenArt721MinterMock.sol/ReentrancyGenArt721MinterMock.json +100 -0
  130. package/artifacts/contracts/mock/ReentrancyHolderMock.sol/ReentrancyHolderMock.json +2 -2
  131. package/artifacts/contracts/mock/ReentrancyHolderMockShared.sol/ReentrancyHolderMockShared.json +2 -2
  132. package/artifacts/contracts/mock/ReentrancyMerkleMock.sol/ReentrancyMerkleMock.json +2 -2
  133. package/artifacts/contracts/mock/ReentrancyMerkleMockShared.sol/ReentrancyMerkleMockShared.json +2 -2
  134. package/artifacts/contracts/mock/ReentrancyMock.sol/ReentrancyMock.json +2 -2
  135. package/artifacts/contracts/mock/ReentrancyMockShared.sol/ReentrancyMockShared.json +2 -2
  136. package/artifacts/contracts/mock/ReentrancySEAMock.sol/ReentrancySEAAutoBidderMock.json +2 -2
  137. package/artifacts/contracts/mock/ReentrancySEAMockShared.sol/ReentrancySEAAutoBidderMockShared.json +2 -2
  138. package/artifacts/contracts/mock/ReentrancySplitterMocks.sol/ReentrancySplitterDrainETHMock.json +54 -0
  139. package/artifacts/contracts/mock/ReentrancySplitterMocks.sol/ReentrancySplitterSendETHMock.json +54 -0
  140. package/artifacts/contracts/randomizer/deprecated/PolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +2 -2
  141. package/artifacts/contracts/randomizer/deprecated/RandomizerV2.sol/BasicRandomizerV2.json +2 -2
  142. package/artifacts/contracts/randomizer/primitive/PseudorandomAtomicBasic.sol/PseudorandomAtomic.json +2 -2
  143. package/artifacts/contracts/randomizer/shared/SharedRandomizerV0.sol/SharedRandomizerV0.json +2 -2
  144. package/artifacts/contracts/split/SplitAtomicFactoryV0.sol/SplitAtomicFactoryV0.json +203 -0
  145. package/artifacts/contracts/split/SplitAtomicV0.sol/SplitAtomicV0.json +168 -0
  146. package/artifacts/contracts/split/split-provider/SplitProviderV0.sol/SplitProviderV0.json +141 -0
  147. package/contracts/AdminACLV0.sol +6 -2
  148. package/contracts/AdminACLV1.sol +2 -2
  149. package/contracts/DependencyRegistryV0.sol +687 -408
  150. package/contracts/{GenArt721CoreV3.sol → archive/GenArt721CoreV3.sol} +56 -20
  151. package/contracts/{explorations → archive}/GenArt721CoreV3_Explorations.sol +49 -13
  152. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterBase_v0_1_1.sol +4 -4
  153. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterDAExp}/MinterDAExpV4.sol +4 -4
  154. package/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol +4 -4
  155. package/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol +5 -5
  156. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterDAExpSettlement}/MinterDAExpSettlementV2.sol +8 -8
  157. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterDALin}/MinterDALinV4.sol +4 -4
  158. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterHolder}/MinterHolderV4.sol +5 -5
  159. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterMerkle}/MinterMerkleV5.sol +5 -5
  160. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterPolyptych}/MinterPolyptychV0.sol +7 -7
  161. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterSEA}/MinterSEAV0.sol +13 -13
  162. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterSetPrice}/MinterSetPriceV4.sol +4 -4
  163. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V0.sol +82 -10
  164. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V1.sol +82 -10
  165. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterSetPriceERC20}/MinterSetPriceERC20V4.sol +88 -21
  166. package/contracts/engine/V2/GenArt721MinterBurner_PBAB.sol +81 -22
  167. package/contracts/engine/V2/GenArt721Minter_PBAB.sol +80 -22
  168. package/contracts/engine/V3/EngineFactoryV0.sol +419 -0
  169. package/contracts/engine/V3/GenArt721CoreV3_Engine.sol +894 -488
  170. package/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol +1054 -650
  171. package/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol +3 -3
  172. package/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol +1 -1
  173. package/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol +2 -2
  174. package/contracts/interfaces/v0.8.x/IAdminACLV0_Extended.sol +20 -0
  175. package/contracts/interfaces/v0.8.x/IBytecodeStorageReaderV2.sol +23 -0
  176. package/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol +47 -45
  177. package/contracts/interfaces/v0.8.x/IEngineFactoryV0.sol +124 -0
  178. package/contracts/interfaces/v0.8.x/IFilteredMinterDAExpSettlementV0.sol +1 -3
  179. package/contracts/interfaces/v0.8.x/IFilteredMinterDAExpSettlementV1.sol +1 -3
  180. package/contracts/interfaces/v0.8.x/IFilteredMinterDAExpV1.sol +1 -3
  181. package/contracts/interfaces/v0.8.x/IFilteredMinterDALinV1.sol +1 -3
  182. package/contracts/interfaces/v0.8.x/IFilteredMinterHolderV2.sol +1 -3
  183. package/contracts/interfaces/v0.8.x/IFilteredMinterMerkleV2.sol +1 -3
  184. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol +115 -11
  185. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol +84 -8
  186. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol +26 -8
  187. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.sol +141 -0
  188. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_PreV3p2.sol +78 -0
  189. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_ProjectFinance.sol +47 -0
  190. package/contracts/interfaces/v0.8.x/IGenArt721Minter_PBAB.sol +91 -0
  191. package/contracts/interfaces/v0.8.x/IPseudorandomAtomic.sol +1 -3
  192. package/contracts/interfaces/v0.8.x/ISharedMinterDAExpSettlementV0.sol +19 -0
  193. package/contracts/interfaces/v0.8.x/ISharedMinterRAMV0.sol +23 -0
  194. package/contracts/interfaces/v0.8.x/ISharedMinterRequired.sol +20 -0
  195. package/contracts/interfaces/v0.8.x/ISharedMinterSEAV0.sol +1 -4
  196. package/contracts/interfaces/v0.8.x/ISharedMinterV0.sol +12 -6
  197. package/contracts/interfaces/v0.8.x/ISplitAtomicFactoryV0.sol +81 -0
  198. package/contracts/interfaces/v0.8.x/ISplitAtomicV0.sol +72 -0
  199. package/contracts/interfaces/v0.8.x/ISplitProviderV0.sol +49 -0
  200. package/contracts/interfaces/v0.8.x/integration-refs/splits-0x-v2/ISplitFactoryV2.sol +62 -0
  201. package/contracts/libs/v0.8.x/ABHelpers.sol +18 -4
  202. package/contracts/libs/v0.8.x/BitMap.sol +112 -0
  203. package/contracts/libs/v0.8.x/BytecodeStorageV2.sol +593 -0
  204. package/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol +90 -0
  205. package/contracts/libs/v0.8.x/ERC721_PackedHashSeedV1.sol +591 -0
  206. package/contracts/libs/v0.8.x/PackedBools.sol +42 -0
  207. package/contracts/libs/v0.8.x/V3FlexLib.sol +591 -0
  208. package/contracts/libs/v0.8.x/minter-libs/DAExpLib.sol +10 -12
  209. package/contracts/libs/v0.8.x/minter-libs/DALinLib.sol +4 -9
  210. package/contracts/libs/v0.8.x/minter-libs/GenericMinterEventsLib.sol +44 -44
  211. package/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol +64 -63
  212. package/contracts/libs/v0.8.x/minter-libs/MerkleLib.sol +14 -10
  213. package/contracts/libs/v0.8.x/minter-libs/RAMLib.sol +2927 -0
  214. package/contracts/libs/v0.8.x/minter-libs/SEALib.sol +60 -62
  215. package/contracts/libs/v0.8.x/minter-libs/SetPriceLib.sol +4 -8
  216. package/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol +92 -89
  217. package/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol +21 -15
  218. package/contracts/libs/v0.8.x/minter-libs/TokenHolderLib.sol +5 -4
  219. package/contracts/minter-suite/MinterFilter/MinterFilterV2.sol +16 -10
  220. package/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol +2 -2
  221. package/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol +19 -15
  222. package/contracts/minter-suite/Minters/MinterDAExpV5.sol +2 -2
  223. package/contracts/minter-suite/Minters/MinterDALinHolderV5.sol +2 -2
  224. package/contracts/minter-suite/Minters/MinterDALinV5.sol +2 -2
  225. package/contracts/minter-suite/Minters/MinterRAMV0.sol +1205 -0
  226. package/contracts/minter-suite/Minters/MinterSEAV1.sol +21 -32
  227. package/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol +17 -8
  228. package/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol +2 -2
  229. package/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol +2 -2
  230. package/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol +23 -9
  231. package/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol +2 -2
  232. package/contracts/minter-suite/Minters/MinterSetPriceV5.sol +2 -2
  233. package/contracts/minter-suite/Minters/one-off/MinterSetPriceV5_SingleCore.sol +446 -0
  234. package/contracts/mock/BytecodeV2LibCallsMock.sol +128 -0
  235. package/contracts/mock/BytecodeV2TextCR_DMock.sol +316 -0
  236. package/contracts/mock/ForceSendMock.sol +22 -0
  237. package/contracts/mock/Mock0xSplitsV2PullFactory.sol +75 -0
  238. package/contracts/mock/Mock0xSplitsV2Splitter.sol +47 -0
  239. package/contracts/mock/MockAdminACLV0.sol +21 -0
  240. package/contracts/mock/MockAdminACLV0_PROHIBITION.sol +21 -0
  241. package/contracts/mock/ReentrancyGenArt721MinterMock.sol +47 -0
  242. package/contracts/mock/ReentrancySplitterMocks.sol +67 -0
  243. package/contracts/randomizer/primitive/PseudorandomAtomicBasic.sol +1 -1
  244. package/contracts/randomizer/shared/SharedRandomizerV0.sol +1 -1
  245. package/contracts/split/SplitAtomicFactoryV0.sol +121 -0
  246. package/contracts/split/SplitAtomicV0.sol +265 -0
  247. package/contracts/split/split-provider/SplitProviderV0.sol +201 -0
  248. package/package.json +62 -34
  249. package/artifacts/contracts/GenArt721CoreV3.sol/GenArt721CoreV3.json +0 -1965
  250. package/artifacts/contracts/explorations/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +0 -1939
  251. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +0 -768
  252. package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverride.sol/GenArt721RoyaltyOverride.json +0 -208
  253. package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverride_PBAB.sol/GenArt721RoyaltyOverride_PBAB.json +0 -301
  254. package/contracts/archive/readme.md +0 -16
  255. package/contracts/engine/README.md +0 -21
  256. package/contracts/royalty-registry/GenArt721RoyaltyOverride.sol +0 -168
  257. package/contracts/royalty-registry/GenArt721RoyaltyOverride_PBAB.sol +0 -221
@@ -394,8 +394,8 @@
394
394
  "type": "function"
395
395
  }
396
396
  ],
397
- "bytecode": "0x60c0604052601660809081527f41646d696e41434c56305f50524f4849424954494f4e0000000000000000000060a0526000906200003e90826200010a565b503480156200004c57600080fd5b50600180546001600160a01b03191633179055620001d6565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200009057607f821691505b602082108103620000b157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200010557600081815260208120601f850160051c81016020861015620000e05750805b601f850160051c820191505b818110156200010157828155600101620000ec565b5050505b505050565b81516001600160401b0381111562000126576200012662000065565b6200013e816200013784546200007b565b84620000b7565b602080601f8311600181146200017657600084156200015d5750858301515b600019600386901b1c1916600185901b17855562000101565b600085815260208120601f198616915b82811015620001a75788860151825594840194600190910190840162000186565b5085821015620001c65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610c4e80620001e66000396000f3fe608060405234801561001057600080fd5b50600436106100ba5760003560e01c806301ffc9a7146100bf57806305de62c0146100e757806329575f6a146100fa578063377a7d1a1461011a578063643596f91461012f578063985d196814610142578063a26e5b5d14610155578063a8c4c7d314610168578063b70349c31461017b578063bcc91a101461019c578063bf485640146101af578063c81a396e146101c2578063dd120909146101d7578063e4d68fac146101ea575b600080fd5b6100d26100cd3660046108a2565b6101fd565b60405190151581526020015b60405180910390f35b6100d26100f53660046108dc565b61024f565b60015461010d906001600160a01b031681565b6040516100de9190610923565b61012d610128366004610937565b61027c565b005b6100d261013d3660046109bf565b610314565b61012d610150366004610a08565b610341565b61012d6101633660046109bf565b6103c1565b6100d2610176366004610a25565b610479565b61018e610189366004610a74565b610521565b6040519081526020016100de565b61012d6101aa366004610a74565b610566565b61018e6101bd3660046109bf565b6106cc565b6101ca610722565b6040516100de9190610aad565b6100d26101e5366004610a74565b6107b0565b61012d6101f8366004610a74565b6107db565b60006001600160e01b03198216635f10935160e01b148061022e57506001600160e01b03198216633001c1ef60e21b145b8061024957506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001546000906001600160a01b03858116911614806102745750610274838386610314565b949350505050565b6001546001600160a01b031633146102af5760405162461bcd60e51b81526004016102a690610afb565b60405180910390fd5b600180546001600160a01b038581166001600160a01b0319831681179093556040519116919082907f3f6845104f9728af7979eed8814320daba008953c8db93b9fe32602d1f34b475906103069087908790610b24565b60405180910390a350505050565b6000600260006103258686866106cc565b815260208101919091526040016000205460ff16949350505050565b6001546001600160a01b0316331461036b5760405162461bcd60e51b81526004016102a690610afb565b806001600160a01b031663715018a66040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156103a657600080fd5b505af11580156103ba573d6000803e3d6000fd5b5050505050565b6103d3333063a26e5b5d60e01b61024f565b6103ef5760405162461bcd60e51b81526004016102a690610b72565b60006103fc8484846106cc565b600081815260026020908152604091829020805460ff8082161560ff19909216821790925592519216151582529192506001600160a01b03848116926001600160e01b0319871692918816917fbdc1f3f5e2cd6fc59a40b890c0c8d6a4e5d774619b69681feec9c771f3642d19910160405180910390a450505050565b60008361048786828661024f565b80610517575061049785876107b0565b8015610517575060405163a47d29cb60e01b8152600481018490526001600160a01b03808816919083169063a47d29cb90602401602060405180830381865afa1580156104e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061050c9190610b9f565b6001600160a01b0316145b9695505050505050565b6040516001600160601b0319606084811b8216602084015283901b16603482015260009060480160405160208183030381529060405280519060200120905092915050565b6001546001600160a01b031633146105905760405162461bcd60e51b81526004016102a690610afb565b6040516301ffc9a760e01b8152633001c1ef60e21b60048201526001600160a01b038216906301ffc9a790602401602060405180830381865afa1580156105db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ff9190610bbc565b61066a5760405162461bcd60e51b815260206004820152603660248201527f41646d696e41434c56303a206e65772061646d696e2041434c20646f6573206e60448201527506f7420737570706f7274204941646d696e41434c56360541b60648201526084016102a6565b60405163f2fde38b60e01b81526001600160a01b0383169063f2fde38b90610696908490600401610923565b600060405180830381600087803b1580156106b057600080fd5b505af11580156106c4573d6000803e3d6000fd5b505050505050565b6040516001600160601b0319606085811b821660208401526001600160e01b03198516603484015283901b166038820152600090604c016040516020818303038152906040528051906020012090509392505050565b6000805461072f90610bde565b80601f016020809104026020016040519081016040528092919081815260200182805461075b90610bde565b80156107a85780601f1061077d576101008083540402835291602001916107a8565b820191906000526020600020905b81548152906001019060200180831161078b57829003601f168201915b505050505081565b6000600360006107c08585610521565b815260208101919091526040016000205460ff169392505050565b6107ed3330633935a3eb60e21b61024f565b6108095760405162461bcd60e51b81526004016102a690610b72565b60006108158383610521565b600081815260036020908152604091829020805460ff8082161560ff19909216821790925592519216151582529192506001600160a01b0384811692908616917fbfadf94df9a8a44d297389bbbba3a5338a54be7dadb5834c9de34a6afcee4691910160405180910390a3505050565b80356001600160e01b03198116811461089d57600080fd5b919050565b6000602082840312156108b457600080fd5b6108bd82610885565b9392505050565b6001600160a01b03811681146108d957600080fd5b50565b6000806000606084860312156108f157600080fd5b83356108fc816108c4565b9250602084013561090c816108c4565b915061091a60408501610885565b90509250925092565b6001600160a01b0391909116815260200190565b60008060006040848603121561094c57600080fd5b8335610957816108c4565b9250602084013567ffffffffffffffff8082111561097457600080fd5b818601915086601f83011261098857600080fd5b81358181111561099757600080fd5b8760208260051b85010111156109ac57600080fd5b6020830194508093505050509250925092565b6000806000606084860312156109d457600080fd5b83356109df816108c4565b92506109ed60208501610885565b915060408401356109fd816108c4565b809150509250925092565b600060208284031215610a1a57600080fd5b81356108bd816108c4565b60008060008060808587031215610a3b57600080fd5b8435610a46816108c4565b93506020850135610a56816108c4565b9250610a6460408601610885565b9396929550929360600135925050565b60008060408385031215610a8757600080fd5b8235610a92816108c4565b91506020830135610aa2816108c4565b809150509250929050565b600060208083528351808285015260005b81811015610ada57858101830151858201604001528201610abe565b506000604082860101526040601f19601f8301168501019250505092915050565b6020808252600f908201526e27b7363c9039bab832b920b236b4b760891b604082015260600190565b60208082528181018390526000908460408401835b86811015610b67578235610b4c816108c4565b6001600160a01b031682529183019190830190600101610b39565b509695505050505050565b60208082526013908201527227b7363c9030b63637bbb2b21031b0b63632b960691b604082015260600190565b600060208284031215610bb157600080fd5b81516108bd816108c4565b600060208284031215610bce57600080fd5b815180151581146108bd57600080fd5b600181811c90821680610bf257607f821691505b602082108103610c1257634e487b7160e01b600052602260045260246000fd5b5091905056fea264697066735822122076e8cf776f839f90459352591c2c147cde9c2ab202439c43fcdb837b433adcf464736f6c63430008130033",
398
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ba5760003560e01c806301ffc9a7146100bf57806305de62c0146100e757806329575f6a146100fa578063377a7d1a1461011a578063643596f91461012f578063985d196814610142578063a26e5b5d14610155578063a8c4c7d314610168578063b70349c31461017b578063bcc91a101461019c578063bf485640146101af578063c81a396e146101c2578063dd120909146101d7578063e4d68fac146101ea575b600080fd5b6100d26100cd3660046108a2565b6101fd565b60405190151581526020015b60405180910390f35b6100d26100f53660046108dc565b61024f565b60015461010d906001600160a01b031681565b6040516100de9190610923565b61012d610128366004610937565b61027c565b005b6100d261013d3660046109bf565b610314565b61012d610150366004610a08565b610341565b61012d6101633660046109bf565b6103c1565b6100d2610176366004610a25565b610479565b61018e610189366004610a74565b610521565b6040519081526020016100de565b61012d6101aa366004610a74565b610566565b61018e6101bd3660046109bf565b6106cc565b6101ca610722565b6040516100de9190610aad565b6100d26101e5366004610a74565b6107b0565b61012d6101f8366004610a74565b6107db565b60006001600160e01b03198216635f10935160e01b148061022e57506001600160e01b03198216633001c1ef60e21b145b8061024957506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001546000906001600160a01b03858116911614806102745750610274838386610314565b949350505050565b6001546001600160a01b031633146102af5760405162461bcd60e51b81526004016102a690610afb565b60405180910390fd5b600180546001600160a01b038581166001600160a01b0319831681179093556040519116919082907f3f6845104f9728af7979eed8814320daba008953c8db93b9fe32602d1f34b475906103069087908790610b24565b60405180910390a350505050565b6000600260006103258686866106cc565b815260208101919091526040016000205460ff16949350505050565b6001546001600160a01b0316331461036b5760405162461bcd60e51b81526004016102a690610afb565b806001600160a01b031663715018a66040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156103a657600080fd5b505af11580156103ba573d6000803e3d6000fd5b5050505050565b6103d3333063a26e5b5d60e01b61024f565b6103ef5760405162461bcd60e51b81526004016102a690610b72565b60006103fc8484846106cc565b600081815260026020908152604091829020805460ff8082161560ff19909216821790925592519216151582529192506001600160a01b03848116926001600160e01b0319871692918816917fbdc1f3f5e2cd6fc59a40b890c0c8d6a4e5d774619b69681feec9c771f3642d19910160405180910390a450505050565b60008361048786828661024f565b80610517575061049785876107b0565b8015610517575060405163a47d29cb60e01b8152600481018490526001600160a01b03808816919083169063a47d29cb90602401602060405180830381865afa1580156104e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061050c9190610b9f565b6001600160a01b0316145b9695505050505050565b6040516001600160601b0319606084811b8216602084015283901b16603482015260009060480160405160208183030381529060405280519060200120905092915050565b6001546001600160a01b031633146105905760405162461bcd60e51b81526004016102a690610afb565b6040516301ffc9a760e01b8152633001c1ef60e21b60048201526001600160a01b038216906301ffc9a790602401602060405180830381865afa1580156105db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ff9190610bbc565b61066a5760405162461bcd60e51b815260206004820152603660248201527f41646d696e41434c56303a206e65772061646d696e2041434c20646f6573206e60448201527506f7420737570706f7274204941646d696e41434c56360541b60648201526084016102a6565b60405163f2fde38b60e01b81526001600160a01b0383169063f2fde38b90610696908490600401610923565b600060405180830381600087803b1580156106b057600080fd5b505af11580156106c4573d6000803e3d6000fd5b505050505050565b6040516001600160601b0319606085811b821660208401526001600160e01b03198516603484015283901b166038820152600090604c016040516020818303038152906040528051906020012090509392505050565b6000805461072f90610bde565b80601f016020809104026020016040519081016040528092919081815260200182805461075b90610bde565b80156107a85780601f1061077d576101008083540402835291602001916107a8565b820191906000526020600020905b81548152906001019060200180831161078b57829003601f168201915b505050505081565b6000600360006107c08585610521565b815260208101919091526040016000205460ff169392505050565b6107ed3330633935a3eb60e21b61024f565b6108095760405162461bcd60e51b81526004016102a690610b72565b60006108158383610521565b600081815260036020908152604091829020805460ff8082161560ff19909216821790925592519216151582529192506001600160a01b0384811692908616917fbfadf94df9a8a44d297389bbbba3a5338a54be7dadb5834c9de34a6afcee4691910160405180910390a3505050565b80356001600160e01b03198116811461089d57600080fd5b919050565b6000602082840312156108b457600080fd5b6108bd82610885565b9392505050565b6001600160a01b03811681146108d957600080fd5b50565b6000806000606084860312156108f157600080fd5b83356108fc816108c4565b9250602084013561090c816108c4565b915061091a60408501610885565b90509250925092565b6001600160a01b0391909116815260200190565b60008060006040848603121561094c57600080fd5b8335610957816108c4565b9250602084013567ffffffffffffffff8082111561097457600080fd5b818601915086601f83011261098857600080fd5b81358181111561099757600080fd5b8760208260051b85010111156109ac57600080fd5b6020830194508093505050509250925092565b6000806000606084860312156109d457600080fd5b83356109df816108c4565b92506109ed60208501610885565b915060408401356109fd816108c4565b809150509250925092565b600060208284031215610a1a57600080fd5b81356108bd816108c4565b60008060008060808587031215610a3b57600080fd5b8435610a46816108c4565b93506020850135610a56816108c4565b9250610a6460408601610885565b9396929550929360600135925050565b60008060408385031215610a8757600080fd5b8235610a92816108c4565b91506020830135610aa2816108c4565b809150509250929050565b600060208083528351808285015260005b81811015610ada57858101830151858201604001528201610abe565b506000604082860101526040601f19601f8301168501019250505092915050565b6020808252600f908201526e27b7363c9039bab832b920b236b4b760891b604082015260600190565b60208082528181018390526000908460408401835b86811015610b67578235610b4c816108c4565b6001600160a01b031682529183019190830190600101610b39565b509695505050505050565b60208082526013908201527227b7363c9030b63637bbb2b21031b0b63632b960691b604082015260600190565b600060208284031215610bb157600080fd5b81516108bd816108c4565b600060208284031215610bce57600080fd5b815180151581146108bd57600080fd5b600181811c90821680610bf257607f821691505b602082108103610c1257634e487b7160e01b600052602260045260246000fd5b5091905056fea264697066735822122076e8cf776f839f90459352591c2c147cde9c2ab202439c43fcdb837b433adcf464736f6c63430008130033",
397
+ "bytecode": "0x60c0604052601660809081527f41646d696e41434c56305f50524f4849424954494f4e0000000000000000000060a0526000906200003e90826200010a565b503480156200004c57600080fd5b50600180546001600160a01b03191633179055620001d6565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200009057607f821691505b602082108103620000b157634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200010557600081815260208120601f850160051c81016020861015620000e05750805b601f850160051c820191505b818110156200010157828155600101620000ec565b5050505b505050565b81516001600160401b0381111562000126576200012662000065565b6200013e816200013784546200007b565b84620000b7565b602080601f8311600181146200017657600084156200015d5750858301515b600019600386901b1c1916600185901b17855562000101565b600085815260208120601f198616915b82811015620001a75788860151825594840194600190910190840162000186565b5085821015620001c65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b610c4e80620001e66000396000f3fe608060405234801561001057600080fd5b50600436106100ba5760003560e01c806301ffc9a7146100bf57806305de62c0146100e757806329575f6a146100fa578063377a7d1a1461011a578063643596f91461012f578063985d196814610142578063a26e5b5d14610155578063a8c4c7d314610168578063b70349c31461017b578063bcc91a101461019c578063bf485640146101af578063c81a396e146101c2578063dd120909146101d7578063e4d68fac146101ea575b600080fd5b6100d26100cd3660046108a2565b6101fd565b60405190151581526020015b60405180910390f35b6100d26100f53660046108dc565b61024f565b60015461010d906001600160a01b031681565b6040516100de9190610923565b61012d610128366004610937565b61027c565b005b6100d261013d3660046109bf565b610314565b61012d610150366004610a08565b610341565b61012d6101633660046109bf565b6103c1565b6100d2610176366004610a25565b610479565b61018e610189366004610a74565b610521565b6040519081526020016100de565b61012d6101aa366004610a74565b610566565b61018e6101bd3660046109bf565b6106cc565b6101ca610722565b6040516100de9190610aad565b6100d26101e5366004610a74565b6107b0565b61012d6101f8366004610a74565b6107db565b60006001600160e01b03198216635f10935160e01b148061022e57506001600160e01b03198216633001c1ef60e21b145b8061024957506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001546000906001600160a01b03858116911614806102745750610274838386610314565b949350505050565b6001546001600160a01b031633146102af5760405162461bcd60e51b81526004016102a690610afb565b60405180910390fd5b600180546001600160a01b038581166001600160a01b0319831681179093556040519116919082907f3f6845104f9728af7979eed8814320daba008953c8db93b9fe32602d1f34b475906103069087908790610b24565b60405180910390a350505050565b6000600260006103258686866106cc565b815260208101919091526040016000205460ff16949350505050565b6001546001600160a01b0316331461036b5760405162461bcd60e51b81526004016102a690610afb565b806001600160a01b031663715018a66040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156103a657600080fd5b505af11580156103ba573d6000803e3d6000fd5b5050505050565b6103d3333063a26e5b5d60e01b61024f565b6103ef5760405162461bcd60e51b81526004016102a690610b72565b60006103fc8484846106cc565b600081815260026020908152604091829020805460ff8082161560ff19909216821790925592519216151582529192506001600160a01b03848116926001600160e01b0319871692918816917fbdc1f3f5e2cd6fc59a40b890c0c8d6a4e5d774619b69681feec9c771f3642d19910160405180910390a450505050565b60008361048786828661024f565b80610517575061049785876107b0565b8015610517575060405163a47d29cb60e01b8152600481018490526001600160a01b03808816919083169063a47d29cb90602401602060405180830381865afa1580156104e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061050c9190610b9f565b6001600160a01b0316145b9695505050505050565b6040516001600160601b0319606084811b8216602084015283901b16603482015260009060480160405160208183030381529060405280519060200120905092915050565b6001546001600160a01b031633146105905760405162461bcd60e51b81526004016102a690610afb565b6040516301ffc9a760e01b8152633001c1ef60e21b60048201526001600160a01b038216906301ffc9a790602401602060405180830381865afa1580156105db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ff9190610bbc565b61066a5760405162461bcd60e51b815260206004820152603660248201527f41646d696e41434c56303a206e65772061646d696e2041434c20646f6573206e60448201527506f7420737570706f7274204941646d696e41434c56360541b60648201526084016102a6565b60405163f2fde38b60e01b81526001600160a01b0383169063f2fde38b90610696908490600401610923565b600060405180830381600087803b1580156106b057600080fd5b505af11580156106c4573d6000803e3d6000fd5b505050505050565b6040516001600160601b0319606085811b821660208401526001600160e01b03198516603484015283901b166038820152600090604c016040516020818303038152906040528051906020012090509392505050565b6000805461072f90610bde565b80601f016020809104026020016040519081016040528092919081815260200182805461075b90610bde565b80156107a85780601f1061077d576101008083540402835291602001916107a8565b820191906000526020600020905b81548152906001019060200180831161078b57829003601f168201915b505050505081565b6000600360006107c08585610521565b815260208101919091526040016000205460ff169392505050565b6107ed3330633935a3eb60e21b61024f565b6108095760405162461bcd60e51b81526004016102a690610b72565b60006108158383610521565b600081815260036020908152604091829020805460ff8082161560ff19909216821790925592519216151582529192506001600160a01b0384811692908616917fbfadf94df9a8a44d297389bbbba3a5338a54be7dadb5834c9de34a6afcee4691910160405180910390a3505050565b80356001600160e01b03198116811461089d57600080fd5b919050565b6000602082840312156108b457600080fd5b6108bd82610885565b9392505050565b6001600160a01b03811681146108d957600080fd5b50565b6000806000606084860312156108f157600080fd5b83356108fc816108c4565b9250602084013561090c816108c4565b915061091a60408501610885565b90509250925092565b6001600160a01b0391909116815260200190565b60008060006040848603121561094c57600080fd5b8335610957816108c4565b9250602084013567ffffffffffffffff8082111561097457600080fd5b818601915086601f83011261098857600080fd5b81358181111561099757600080fd5b8760208260051b85010111156109ac57600080fd5b6020830194508093505050509250925092565b6000806000606084860312156109d457600080fd5b83356109df816108c4565b92506109ed60208501610885565b915060408401356109fd816108c4565b809150509250925092565b600060208284031215610a1a57600080fd5b81356108bd816108c4565b60008060008060808587031215610a3b57600080fd5b8435610a46816108c4565b93506020850135610a56816108c4565b9250610a6460408601610885565b9396929550929360600135925050565b60008060408385031215610a8757600080fd5b8235610a92816108c4565b91506020830135610aa2816108c4565b809150509250929050565b600060208083528351808285015260005b81811015610ada57858101830151858201604001528201610abe565b506000604082860101526040601f19601f8301168501019250505092915050565b6020808252600f908201526e27b7363c9039bab832b920b236b4b760891b604082015260600190565b60208082528181018390526000908460408401835b86811015610b67578235610b4c816108c4565b6001600160a01b031682529183019190830190600101610b39565b509695505050505050565b60208082526013908201527227b7363c9030b63637bbb2b21031b0b63632b960691b604082015260600190565b600060208284031215610bb157600080fd5b81516108bd816108c4565b600060208284031215610bce57600080fd5b815180151581146108bd57600080fd5b600181811c90821680610bf257607f821691505b602082108103610c1257634e487b7160e01b600052602260045260246000fd5b5091905056fea2646970667358221220e89c3fb616e01a2baad401a991a0d27a59231495d58cc67fe020839e0167330764736f6c63430008130033",
398
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ba5760003560e01c806301ffc9a7146100bf57806305de62c0146100e757806329575f6a146100fa578063377a7d1a1461011a578063643596f91461012f578063985d196814610142578063a26e5b5d14610155578063a8c4c7d314610168578063b70349c31461017b578063bcc91a101461019c578063bf485640146101af578063c81a396e146101c2578063dd120909146101d7578063e4d68fac146101ea575b600080fd5b6100d26100cd3660046108a2565b6101fd565b60405190151581526020015b60405180910390f35b6100d26100f53660046108dc565b61024f565b60015461010d906001600160a01b031681565b6040516100de9190610923565b61012d610128366004610937565b61027c565b005b6100d261013d3660046109bf565b610314565b61012d610150366004610a08565b610341565b61012d6101633660046109bf565b6103c1565b6100d2610176366004610a25565b610479565b61018e610189366004610a74565b610521565b6040519081526020016100de565b61012d6101aa366004610a74565b610566565b61018e6101bd3660046109bf565b6106cc565b6101ca610722565b6040516100de9190610aad565b6100d26101e5366004610a74565b6107b0565b61012d6101f8366004610a74565b6107db565b60006001600160e01b03198216635f10935160e01b148061022e57506001600160e01b03198216633001c1ef60e21b145b8061024957506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001546000906001600160a01b03858116911614806102745750610274838386610314565b949350505050565b6001546001600160a01b031633146102af5760405162461bcd60e51b81526004016102a690610afb565b60405180910390fd5b600180546001600160a01b038581166001600160a01b0319831681179093556040519116919082907f3f6845104f9728af7979eed8814320daba008953c8db93b9fe32602d1f34b475906103069087908790610b24565b60405180910390a350505050565b6000600260006103258686866106cc565b815260208101919091526040016000205460ff16949350505050565b6001546001600160a01b0316331461036b5760405162461bcd60e51b81526004016102a690610afb565b806001600160a01b031663715018a66040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156103a657600080fd5b505af11580156103ba573d6000803e3d6000fd5b5050505050565b6103d3333063a26e5b5d60e01b61024f565b6103ef5760405162461bcd60e51b81526004016102a690610b72565b60006103fc8484846106cc565b600081815260026020908152604091829020805460ff8082161560ff19909216821790925592519216151582529192506001600160a01b03848116926001600160e01b0319871692918816917fbdc1f3f5e2cd6fc59a40b890c0c8d6a4e5d774619b69681feec9c771f3642d19910160405180910390a450505050565b60008361048786828661024f565b80610517575061049785876107b0565b8015610517575060405163a47d29cb60e01b8152600481018490526001600160a01b03808816919083169063a47d29cb90602401602060405180830381865afa1580156104e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061050c9190610b9f565b6001600160a01b0316145b9695505050505050565b6040516001600160601b0319606084811b8216602084015283901b16603482015260009060480160405160208183030381529060405280519060200120905092915050565b6001546001600160a01b031633146105905760405162461bcd60e51b81526004016102a690610afb565b6040516301ffc9a760e01b8152633001c1ef60e21b60048201526001600160a01b038216906301ffc9a790602401602060405180830381865afa1580156105db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ff9190610bbc565b61066a5760405162461bcd60e51b815260206004820152603660248201527f41646d696e41434c56303a206e65772061646d696e2041434c20646f6573206e60448201527506f7420737570706f7274204941646d696e41434c56360541b60648201526084016102a6565b60405163f2fde38b60e01b81526001600160a01b0383169063f2fde38b90610696908490600401610923565b600060405180830381600087803b1580156106b057600080fd5b505af11580156106c4573d6000803e3d6000fd5b505050505050565b6040516001600160601b0319606085811b821660208401526001600160e01b03198516603484015283901b166038820152600090604c016040516020818303038152906040528051906020012090509392505050565b6000805461072f90610bde565b80601f016020809104026020016040519081016040528092919081815260200182805461075b90610bde565b80156107a85780601f1061077d576101008083540402835291602001916107a8565b820191906000526020600020905b81548152906001019060200180831161078b57829003601f168201915b505050505081565b6000600360006107c08585610521565b815260208101919091526040016000205460ff169392505050565b6107ed3330633935a3eb60e21b61024f565b6108095760405162461bcd60e51b81526004016102a690610b72565b60006108158383610521565b600081815260036020908152604091829020805460ff8082161560ff19909216821790925592519216151582529192506001600160a01b0384811692908616917fbfadf94df9a8a44d297389bbbba3a5338a54be7dadb5834c9de34a6afcee4691910160405180910390a3505050565b80356001600160e01b03198116811461089d57600080fd5b919050565b6000602082840312156108b457600080fd5b6108bd82610885565b9392505050565b6001600160a01b03811681146108d957600080fd5b50565b6000806000606084860312156108f157600080fd5b83356108fc816108c4565b9250602084013561090c816108c4565b915061091a60408501610885565b90509250925092565b6001600160a01b0391909116815260200190565b60008060006040848603121561094c57600080fd5b8335610957816108c4565b9250602084013567ffffffffffffffff8082111561097457600080fd5b818601915086601f83011261098857600080fd5b81358181111561099757600080fd5b8760208260051b85010111156109ac57600080fd5b6020830194508093505050509250925092565b6000806000606084860312156109d457600080fd5b83356109df816108c4565b92506109ed60208501610885565b915060408401356109fd816108c4565b809150509250925092565b600060208284031215610a1a57600080fd5b81356108bd816108c4565b60008060008060808587031215610a3b57600080fd5b8435610a46816108c4565b93506020850135610a56816108c4565b9250610a6460408601610885565b9396929550929360600135925050565b60008060408385031215610a8757600080fd5b8235610a92816108c4565b91506020830135610aa2816108c4565b809150509250929050565b600060208083528351808285015260005b81811015610ada57858101830151858201604001528201610abe565b506000604082860101526040601f19601f8301168501019250505092915050565b6020808252600f908201526e27b7363c9039bab832b920b236b4b760891b604082015260600190565b60208082528181018390526000908460408401835b86811015610b67578235610b4c816108c4565b6001600160a01b031682529183019190830190600101610b39565b509695505050505050565b60208082526013908201527227b7363c9030b63637bbb2b21031b0b63632b960691b604082015260600190565b600060208284031215610bb157600080fd5b81516108bd816108c4565b600060208284031215610bce57600080fd5b815180151581146108bd57600080fd5b600181811c90821680610bf257607f821691505b602082108103610c1257634e487b7160e01b600052602260045260246000fd5b5091905056fea2646970667358221220e89c3fb616e01a2baad401a991a0d27a59231495d58cc67fe020839e0167330764736f6c63430008130033",
399
399
  "linkReferences": {},
400
400
  "deployedLinkReferences": {}
401
401
  }