@artblocks/contracts 1.0.3 → 1.1.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 (383) hide show
  1. package/README.md +32 -25
  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 +212 -17
  5. package/artifacts/contracts/GenArt721CoreV3.sol/GenArt721CoreV3.json +6 -6
  6. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV0.sol/MinterDAExpV0.json +2 -2
  7. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV1.sol/MinterDAExpV1.json +2 -2
  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/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +2 -2
  11. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +2 -2
  12. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV0.sol/MinterDALinV0.json +2 -2
  13. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV1.sol/MinterDALinV1.json +2 -2
  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/archive/minter-suite/Minters/MinterHolder/MinterHolderV0.sol/MinterHolderV0.json +2 -2
  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/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV0.sol/MinterMerkleV0.json +2 -2
  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/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV0.sol/MinterSetPriceV0.json +2 -2
  26. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV1.sol/MinterSetPriceV1.json +2 -2
  27. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +2 -2
  28. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +2 -2
  29. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V0.sol/MinterSetPriceERC20V0.json +2 -2
  30. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V1.sol/MinterSetPriceERC20V1.json +2 -2
  31. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +2 -2
  32. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +2 -2
  33. package/artifacts/contracts/engine/V2/GenArt721CoreV2_ENGINE_FLEX.sol/GenArt721CoreV2_ENGINE_FLEX.json +2 -2
  34. package/artifacts/contracts/engine/V2/GenArt721CoreV2_PBAB.sol/GenArt721CoreV2_PBAB.json +2 -2
  35. package/artifacts/contracts/engine/V2/GenArt721CoreV2_PRTNR.sol/GenArt721CoreV2_PRTNR.json +2 -2
  36. package/artifacts/contracts/engine/V2/GenArt721MinterBurner_PBAB.sol/GenArt721MinterBurner_PBAB.json +2 -2
  37. package/artifacts/contracts/engine/V2/GenArt721MinterDAExp_PBAB.sol/GenArt721MinterDAExp_PBAB.json +2 -2
  38. package/artifacts/contracts/engine/V2/GenArt721Minter_PBAB.sol/GenArt721Minter_PBAB.json +2 -2
  39. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +6 -11
  40. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +6 -11
  41. package/artifacts/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol/GenArt721CoreV3_Engine_Flex_PROOF.json +6 -11
  42. package/artifacts/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol/AdminACLV0_PROHIBITION.json +2 -2
  43. package/artifacts/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol/GenArt721CoreV3_Engine_Flex_PROHIBITION.json +6 -11
  44. package/artifacts/contracts/engine-registry/CoreRegistryV1.sol/CoreRegistryV1.json +12 -12
  45. package/artifacts/contracts/engine-registry/EngineRegistryV0.sol/EngineRegistryV0.json +2 -2
  46. package/artifacts/contracts/explorations/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +6 -6
  47. package/artifacts/contracts/interfaces/{0.5.x → v0.5.x}/IBonusContract.sol/IBonusContract.json +1 -1
  48. package/artifacts/contracts/interfaces/{0.5.x → v0.5.x}/IGenArt721CoreContractV1.sol/IGenArt721CoreContractV1.json +1 -1
  49. package/artifacts/contracts/interfaces/{0.5.x → v0.5.x}/IGenArt721CoreV2_PBAB.sol/IGenArt721CoreV2_PBAB.json +1 -1
  50. package/artifacts/contracts/interfaces/{0.5.x → v0.5.x}/IRandomizer.sol/IRandomizer.json +1 -1
  51. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IAdminACLV0.sol/IAdminACLV0.json +1 -1
  52. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IArtblocksRoyaltyOverride.sol/IArtblocksRoyaltyOverride.json +1 -1
  53. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IBonusContract.sol/IBonusContract.json +1 -1
  54. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IBytecodeStorageReader.sol/IBytecodeStorageReader.json +1 -1
  55. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/ICoreRegistryV1.sol/ICoreRegistryV1.json +7 -7
  56. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IDelegationRegistry.sol/IDelegationRegistry.json +1 -1
  57. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IDependencyRegistryCompatibleV0.sol/IDependencyRegistryCompatibleV0.json +1 -1
  58. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IDependencyRegistryV0.sol/IDependencyRegistryV0.json +22 -3
  59. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IEngineRegistryV0.sol/IEngineRegistryV0.json +1 -1
  60. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlementV0.sol/IFilteredMinterDAExpSettlementV0.json +1 -1
  61. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlementV1.sol/IFilteredMinterDAExpSettlementV1.json +1 -1
  62. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlement_Mixin.sol/IFilteredMinterDAExpSettlement_Mixin.json +1 -1
  63. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpV0.sol/IFilteredMinterDAExpV0.json +1 -1
  64. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpV1.sol/IFilteredMinterDAExpV1.json +1 -1
  65. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDALinV0.sol/IFilteredMinterDALinV0.json +1 -1
  66. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDALinV1.sol/IFilteredMinterDALinV1.json +1 -1
  67. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV0.sol/IFilteredMinterHolderV0.json +1 -1
  68. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV1.sol/IFilteredMinterHolderV1.json +1 -1
  69. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV2.sol/IFilteredMinterHolderV2.json +1 -1
  70. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV0.sol/IFilteredMinterMerkleV0.json +1 -1
  71. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV1.sol/IFilteredMinterMerkleV1.json +1 -1
  72. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV2.sol/IFilteredMinterMerkleV2.json +1 -1
  73. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterSEAV0.sol/IFilteredMinterSEAV0.json +1 -1
  74. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV0.sol/IFilteredMinterV0.json +1 -1
  75. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV1.sol/IFilteredMinterV1.json +1 -1
  76. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV2.sol/IFilteredMinterV2.json +1 -1
  77. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractExposesHashSeed.sol/IGenArt721CoreContractExposesHashSeed.json +1 -1
  78. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV1.sol/IGenArt721CoreContractV1.json +1 -1
  79. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +1 -1
  80. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3WithSharedRandomizer.sol/IGenArt721CoreContractV3WithSharedRandomizer.json +24 -0
  81. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +1 -1
  82. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +1 -1
  83. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +1 -1
  84. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreV2_PBAB.sol/IGenArt721CoreV2_PBAB.json +1 -1
  85. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IManifold.sol/IManifold.json +1 -1
  86. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMinterBaseV0.sol/IMinterBaseV0.json +1 -1
  87. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMinterFilterV0.sol/IMinterFilterV0.json +1 -1
  88. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMinterFilterV1.sol/IMinterFilterV1.json +104 -19
  89. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMintingAPICoreV0.sol/IMintingAPICoreV0.json +1 -1
  90. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMintingAPIMinterV0.sol/IMintingAPIMinterV0.json +1 -1
  91. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IPseudorandomAtomic.sol/IPseudorandomAtomic.json +1 -1
  92. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizer.sol/IRandomizer.json +1 -1
  93. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizerPolyptychV0.sol/IRandomizerPolyptychV0.json +1 -1
  94. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizerV2.sol/IRandomizerV2.json +1 -1
  95. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizer_V3CoreBase.sol/IRandomizer_V3CoreBase.json +1 -1
  96. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDAExpSettlementV0.sol/ISharedMinterDAExpSettlementV0.json +114 -0
  97. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDAExpV0.sol/ISharedMinterDAExpV0.json +37 -0
  98. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDALinV0.sol/ISharedMinterDALinV0.json +37 -0
  99. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDAV0.sol/ISharedMinterDAV0.json +50 -0
  100. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterHolderERC20V0.sol/ISharedMinterHolderERC20V0.json +158 -0
  101. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterHolderV0.sol/ISharedMinterHolderV0.json +128 -0
  102. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterMerkleV0.sol/ISharedMinterMerkleV0.json +97 -0
  103. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterSEAV0.sol/ISharedMinterSEAV0.json +29 -0
  104. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterSimplePurchaseV0.sol/ISharedMinterSimplePurchaseV0.json +64 -0
  105. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterV0.sol/ISharedMinterV0.json +117 -0
  106. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/ISharedRandomizerV0.sol/ISharedRandomizerV0.json +52 -36
  107. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IWETH.sol/IWETH.json +1 -1
  108. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/Address.json +2 -2
  109. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/Counters.json +2 -2
  110. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/CustomERC721Metadata.json +2 -2
  111. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/ERC721.json +2 -2
  112. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/ERC721Enumerable.json +2 -2
  113. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/GenArt721CoreV1.json +2 -2
  114. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/SafeMath.json +2 -2
  115. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/Strings.json +2 -2
  116. package/artifacts/contracts/legacy/GenArt721LegacyMinter.sol/GenArt721LegacyMinter.json +2 -2
  117. package/artifacts/contracts/libs/integration-refs/delegation-registry/DelegationRegistry.sol/DelegationRegistry.json +2 -2
  118. package/artifacts/contracts/libs/{0.5.x → v0.5.x}/CustomERC721Metadata.sol/CustomERC721Metadata.json +3 -3
  119. package/artifacts/contracts/libs/{0.5.x → v0.5.x}/IERC20.sol/IERC20.json +1 -1
  120. package/artifacts/contracts/libs/{0.5.x → v0.5.x}/SafeMath.sol/SafeMath.json +3 -3
  121. package/artifacts/contracts/libs/{0.5.x → v0.5.x}/Strings.sol/Strings.json +3 -3
  122. package/artifacts/contracts/libs/v0.8.x/ABHelpers.sol/ABHelpers.json +10 -0
  123. package/artifacts/contracts/libs/v0.8.x/AuthLib.sol/AuthLib.json +10 -0
  124. package/artifacts/contracts/libs/{0.8.x → v0.8.x}/BytecodeStorageV0.sol/BytecodeStorage.json +3 -3
  125. package/artifacts/contracts/libs/{0.8.x → v0.8.x}/BytecodeStorageV1.sol/BytecodeStorageReader.json +3 -3
  126. package/artifacts/contracts/libs/{0.8.x → v0.8.x}/BytecodeStorageV1.sol/BytecodeStorageWriter.json +3 -3
  127. package/artifacts/contracts/libs/{0.8.x → v0.8.x}/Bytes32Strings.sol/Bytes32Strings.json +3 -3
  128. package/artifacts/contracts/libs/{0.8.x → v0.8.x}/ERC721_PackedHashSeed.sol/ERC721_PackedHashSeed.json +3 -3
  129. package/artifacts/contracts/libs/{0.8.x → v0.8.x}/SSTORE2.sol/SSTORE2.json +3 -3
  130. package/artifacts/contracts/libs/v0.8.x/minter-libs/DAExpLib.sol/DAExpLib.json +67 -0
  131. package/artifacts/contracts/libs/v0.8.x/minter-libs/DALib.sol/DALib.json +30 -0
  132. package/artifacts/contracts/libs/v0.8.x/minter-libs/DALinLib.sol/DALinLib.json +67 -0
  133. package/artifacts/contracts/libs/v0.8.x/minter-libs/GenericMinterEventsLib.sol/GenericMinterEventsLib.json +346 -0
  134. package/artifacts/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol/MaxInvocationsLib.json +36 -0
  135. package/artifacts/contracts/libs/v0.8.x/minter-libs/MerkleLib.sol/MerkleLib.json +37 -0
  136. package/artifacts/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol/PolyptychLib.json +10 -0
  137. package/artifacts/contracts/libs/v0.8.x/minter-libs/SEALib.sol/SEALib.json +261 -0
  138. package/artifacts/contracts/libs/v0.8.x/minter-libs/SetPriceLib.sol/SetPriceLib.json +55 -0
  139. package/artifacts/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol/SettlementExpLib.json +48 -0
  140. package/artifacts/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol/SplitFundsLib.json +42 -0
  141. package/artifacts/contracts/libs/v0.8.x/minter-libs/TokenHolderLib.sol/TokenHolderLib.json +86 -0
  142. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV0.sol/MinterFilterV0.json +2 -2
  143. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +2 -2
  144. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV2.sol/MinterFilterV2.json +96 -40
  145. package/artifacts/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol/MinterDAExpHolderV5.json +662 -0
  146. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +2 -20
  147. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol/MinterDAExpSettlementV3.json +619 -0
  148. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV4.sol/MinterDAExpV4.json +2 -2
  149. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV5.sol/MinterDAExpV5.json +418 -0
  150. package/artifacts/contracts/minter-suite/Minters/MinterDALinHolderV5.sol/MinterDALinHolderV5.json +662 -0
  151. package/artifacts/contracts/minter-suite/Minters/MinterDALinV4.sol/MinterDALinV4.json +2 -2
  152. package/artifacts/contracts/minter-suite/Minters/MinterDALinV5.sol/MinterDALinV5.json +418 -0
  153. package/artifacts/contracts/minter-suite/Minters/MinterHolderV4.sol/MinterHolderV4.json +2 -2
  154. package/artifacts/contracts/minter-suite/Minters/MinterMerkleV5.sol/MinterMerkleV5.json +2 -2
  155. package/artifacts/contracts/minter-suite/Minters/MinterPolyptychV0.sol/MinterPolyptychV0.json +2 -2
  156. package/artifacts/contracts/minter-suite/Minters/MinterSEAV0.sol/MinterSEAV0.json +2 -2
  157. package/artifacts/contracts/minter-suite/Minters/MinterSEAV1.sol/MinterSEAV1.json +659 -0
  158. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +2 -2
  159. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol/MinterSetPriceERC20V5.json +452 -0
  160. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol/MinterSetPriceHolderV5.json +600 -0
  161. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol/MinterSetPriceMerkleV5.json +633 -0
  162. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol/MinterSetPricePolyptychERC20V5.json +782 -0
  163. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol/MinterSetPricePolyptychV5.json +676 -0
  164. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV4.sol/MinterSetPriceV4.json +2 -2
  165. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV5.sol/MinterSetPriceV5.json +356 -0
  166. package/artifacts/contracts/mock/BytecodeV0TextCR_DMock.sol/BytecodeV0TextCR_DMock.json +2 -2
  167. package/artifacts/contracts/mock/BytecodeV1LibCallsMock.sol/BytecodeV1LibCallsMock.json +2 -2
  168. package/artifacts/contracts/mock/BytecodeV1TextCR_DMock.sol/BytecodeV1TextCR_DMock.json +4 -4
  169. package/artifacts/contracts/mock/DeadReceiverBidderMock.sol/DeadReceiverBidderMock.json +25 -2
  170. package/artifacts/contracts/mock/DummySharedMinter.sol/DummySharedMinter.json +2 -2
  171. package/artifacts/contracts/mock/ERC20Mock.sol/ERC20Mock.json +28 -2
  172. package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +6 -11
  173. package/artifacts/contracts/mock/MockAdminACLV0.sol/MockAdminACLV0Events.json +2 -2
  174. package/artifacts/contracts/mock/MockAdminACLV0_PROHIBITION.sol/MockAdminACLV0Events_PROHIBITION.json +2 -2
  175. package/artifacts/contracts/mock/OriginRegisterMock.sol/OriginRegisterMock.json +2 -2
  176. package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +2 -2
  177. package/artifacts/contracts/mock/ReentrancyHolderMock.sol/ReentrancyHolderMock.json +2 -2
  178. package/artifacts/contracts/mock/ReentrancyHolderMockShared.sol/ReentrancyHolderMockShared.json +136 -0
  179. package/artifacts/contracts/mock/ReentrancyMerkleMock.sol/ReentrancyMerkleMock.json +2 -2
  180. package/artifacts/contracts/mock/ReentrancyMerkleMockShared.sol/ReentrancyMerkleMockShared.json +105 -0
  181. package/artifacts/contracts/mock/ReentrancyMock.sol/ReentrancyMock.json +2 -2
  182. package/artifacts/contracts/mock/ReentrancyMockShared.sol/ReentrancyMockShared.json +100 -0
  183. package/artifacts/contracts/mock/ReentrancySEAMock.sol/ReentrancySEAAutoBidderMock.json +2 -2
  184. package/artifacts/contracts/mock/ReentrancySEAMockShared.sol/ReentrancySEAAutoBidderMockShared.json +69 -0
  185. package/artifacts/contracts/mock/SSTORE2Mock.sol/SSTORE2Mock.json +2 -2
  186. package/artifacts/contracts/randomizer/deprecated/BasicRandomizer.sol/BasicRandomizer.json +2 -2
  187. package/artifacts/contracts/randomizer/deprecated/PolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +2 -2
  188. package/artifacts/contracts/randomizer/deprecated/RandomizerV2.sol/BasicRandomizerV2.json +2 -2
  189. package/artifacts/contracts/randomizer/primitive/PseudorandomAtomicBasic.sol/PseudorandomAtomic.json +2 -2
  190. package/artifacts/contracts/randomizer/shared/SharedRandomizerV0.sol/SharedRandomizerV0.json +58 -42
  191. package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverride.sol/GenArt721RoyaltyOverride.json +2 -2
  192. package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverride_PBAB.sol/GenArt721RoyaltyOverride_PBAB.json +2 -2
  193. package/contracts/AdminACLV0.sol +1 -1
  194. package/contracts/AdminACLV1.sol +1 -1
  195. package/contracts/DependencyRegistryV0.sol +300 -123
  196. package/contracts/GenArt721CoreV3.sol +27 -12
  197. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV0.sol +3 -3
  198. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV1.sol +3 -3
  199. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol +3 -3
  200. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol +3 -3
  201. package/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol +3 -3
  202. package/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol +3 -3
  203. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV0.sol +3 -3
  204. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV1.sol +3 -3
  205. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol +3 -3
  206. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol +3 -3
  207. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV0.sol +3 -3
  208. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol +3 -3
  209. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol +4 -4
  210. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol +4 -4
  211. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV0.sol +3 -3
  212. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol +3 -3
  213. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol +4 -4
  214. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol +4 -4
  215. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol +4 -4
  216. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV0.sol +3 -3
  217. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV1.sol +3 -3
  218. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol +3 -3
  219. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol +3 -3
  220. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V0.sol +3 -3
  221. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V1.sol +3 -3
  222. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol +3 -3
  223. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol +3 -3
  224. package/contracts/archive/readme.md +16 -0
  225. package/contracts/engine/README.md +21 -0
  226. package/contracts/engine/V2/GenArt721CoreV2_ENGINE_FLEX.sol +2 -2
  227. package/contracts/engine/V2/GenArt721CoreV2_PBAB.sol +2 -2
  228. package/contracts/engine/V2/GenArt721CoreV2_PRTNR.sol +3 -3
  229. package/contracts/engine/V2/GenArt721MinterBurner_PBAB.sol +2 -2
  230. package/contracts/engine/V2/GenArt721MinterDAExp_PBAB.sol +1 -1
  231. package/contracts/engine/V2/GenArt721Minter_PBAB.sol +2 -2
  232. package/contracts/engine/V3/GenArt721CoreV3_Engine.sol +31 -22
  233. package/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol +31 -22
  234. package/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol +12 -18
  235. package/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol +1 -1
  236. package/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol +23 -24
  237. package/contracts/engine/V3/forks/PROHIBITION/interfaces/IAdminACLV0_PROHIBITION.sol +1 -1
  238. package/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol +1 -1
  239. package/contracts/engine-registry/CoreRegistryV1.sol +58 -65
  240. package/contracts/engine-registry/EngineRegistryV0.sol +1 -1
  241. package/contracts/explorations/GenArt721CoreV3_Explorations.sol +27 -12
  242. package/contracts/interfaces/{0.8.x → v0.8.x}/ICoreRegistryV1.sol +6 -8
  243. package/contracts/interfaces/{0.8.x → v0.8.x}/IDependencyRegistryV0.sol +5 -2
  244. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3WithSharedRandomizer.sol +23 -0
  245. package/contracts/interfaces/{0.8.x → v0.8.x}/IMinterFilterV1.sol +45 -19
  246. package/contracts/interfaces/v0.8.x/IRandomizer_V3CoreBase.sol +23 -0
  247. package/contracts/interfaces/v0.8.x/ISharedMinterDAExpSettlementV0.sol +28 -0
  248. package/contracts/interfaces/v0.8.x/ISharedMinterDAExpV0.sol +12 -0
  249. package/contracts/interfaces/v0.8.x/ISharedMinterDALinV0.sol +12 -0
  250. package/contracts/interfaces/v0.8.x/ISharedMinterDAV0.sol +13 -0
  251. package/contracts/interfaces/v0.8.x/ISharedMinterHolderERC20V0.sol +47 -0
  252. package/contracts/interfaces/v0.8.x/ISharedMinterHolderV0.sol +41 -0
  253. package/contracts/interfaces/v0.8.x/ISharedMinterMerkleV0.sol +34 -0
  254. package/contracts/interfaces/v0.8.x/ISharedMinterSEAV0.sol +15 -0
  255. package/contracts/interfaces/v0.8.x/ISharedMinterSimplePurchaseV0.sol +28 -0
  256. package/contracts/interfaces/v0.8.x/ISharedMinterV0.sol +43 -0
  257. package/contracts/interfaces/v0.8.x/ISharedRandomizerV0.sol +123 -0
  258. package/contracts/legacy/GenArt721CoreV1.sol +2 -2
  259. package/contracts/legacy/GenArt721LegacyMinter.sol +5 -5
  260. package/contracts/libs/integration-refs/delegation-registry/DelegationRegistry.sol +1 -1
  261. package/contracts/libs/v0.8.x/ABHelpers.sol +55 -0
  262. package/contracts/libs/v0.8.x/AuthLib.sol +196 -0
  263. package/contracts/libs/{0.8.x → v0.8.x}/Bytes32Strings.sol +5 -5
  264. package/contracts/libs/v0.8.x/minter-libs/DAExpLib.sol +250 -0
  265. package/contracts/libs/v0.8.x/minter-libs/DALib.sol +26 -0
  266. package/contracts/libs/v0.8.x/minter-libs/DALinLib.sol +216 -0
  267. package/contracts/libs/v0.8.x/minter-libs/GenericMinterEventsLib.sol +171 -0
  268. package/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol +488 -0
  269. package/contracts/libs/v0.8.x/minter-libs/MerkleLib.sol +384 -0
  270. package/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol +240 -0
  271. package/contracts/libs/v0.8.x/minter-libs/SEALib.sol +995 -0
  272. package/contracts/libs/v0.8.x/minter-libs/SetPriceLib.sol +166 -0
  273. package/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol +770 -0
  274. package/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol +741 -0
  275. package/contracts/libs/v0.8.x/minter-libs/TokenHolderLib.sol +291 -0
  276. package/contracts/minter-suite/MinterFilter/MinterFilterV0.sol +3 -3
  277. package/contracts/minter-suite/MinterFilter/MinterFilterV1.sol +5 -5
  278. package/contracts/minter-suite/MinterFilter/MinterFilterV2.sol +414 -297
  279. package/contracts/minter-suite/Minters/MinterBase_v0_1_1.sol +4 -4
  280. package/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol +866 -0
  281. package/contracts/minter-suite/Minters/MinterDAExpSettlementV2.sol +4 -57
  282. package/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol +886 -0
  283. package/contracts/minter-suite/Minters/MinterDAExpV4.sol +3 -3
  284. package/contracts/minter-suite/Minters/MinterDAExpV5.sol +545 -0
  285. package/contracts/minter-suite/Minters/MinterDALinHolderV5.sol +857 -0
  286. package/contracts/minter-suite/Minters/MinterDALinV4.sol +3 -3
  287. package/contracts/minter-suite/Minters/MinterDALinV5.sol +534 -0
  288. package/contracts/minter-suite/Minters/MinterHolderV4.sol +4 -4
  289. package/contracts/minter-suite/Minters/MinterMerkleV5.sol +4 -4
  290. package/contracts/minter-suite/Minters/MinterPolyptychV0.sol +6 -6
  291. package/contracts/minter-suite/Minters/MinterSEAV0.sol +3 -3
  292. package/contracts/minter-suite/Minters/MinterSEAV1.sol +853 -0
  293. package/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol +5 -5
  294. package/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol +545 -0
  295. package/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol +730 -0
  296. package/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol +714 -0
  297. package/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol +1012 -0
  298. package/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol +868 -0
  299. package/contracts/minter-suite/Minters/MinterSetPriceV4.sol +3 -3
  300. package/contracts/minter-suite/Minters/MinterSetPriceV5.sol +414 -0
  301. package/contracts/mock/BytecodeV0TextCR_DMock.sol +1 -1
  302. package/contracts/mock/BytecodeV1LibCallsMock.sol +1 -1
  303. package/contracts/mock/BytecodeV1TextCR_DMock.sol +1 -1
  304. package/contracts/mock/DeadReceiverBidderMock.sol +15 -0
  305. package/contracts/mock/DummySharedMinter.sol +2 -2
  306. package/contracts/mock/ERC20Mock.sol +16 -0
  307. package/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol +11 -18
  308. package/contracts/mock/MockAdminACLV0.sol +1 -1
  309. package/contracts/mock/MockAdminACLV0_PROHIBITION.sol +1 -1
  310. package/contracts/mock/OriginRegisterMock.sol +1 -1
  311. package/contracts/mock/ReentrancyHolderMock.sol +1 -1
  312. package/contracts/mock/ReentrancyHolderMockShared.sol +59 -0
  313. package/contracts/mock/ReentrancyMerkleMock.sol +1 -1
  314. package/contracts/mock/ReentrancyMerkleMockShared.sol +58 -0
  315. package/contracts/mock/ReentrancyMock.sol +1 -1
  316. package/contracts/mock/ReentrancyMockShared.sol +48 -0
  317. package/contracts/mock/ReentrancySEAMock.sol +1 -1
  318. package/contracts/mock/ReentrancySEAMockShared.sol +40 -0
  319. package/contracts/mock/SSTORE2Mock.sol +1 -1
  320. package/contracts/randomizer/deprecated/BasicRandomizer.sol +1 -1
  321. package/contracts/randomizer/deprecated/PolyptychRandomizerV0.sol +2 -2
  322. package/contracts/randomizer/deprecated/RandomizerV2.sol +2 -2
  323. package/contracts/randomizer/primitive/PseudorandomAtomicBasic.sol +1 -1
  324. package/contracts/randomizer/shared/SharedRandomizerV0.sol +134 -111
  325. package/contracts/royalty-registry/GenArt721RoyaltyOverride.sol +2 -2
  326. package/contracts/royalty-registry/GenArt721RoyaltyOverride_PBAB.sol +2 -2
  327. package/package.json +57 -36
  328. package/LICENSE +0 -165
  329. package/contracts/interfaces/0.8.x/IRandomizer_V3CoreBase.sol +0 -10
  330. package/contracts/interfaces/0.8.x/ISharedRandomizerV0.sol +0 -105
  331. /package/contracts/interfaces/{0.5.x → v0.5.x}/IBonusContract.sol +0 -0
  332. /package/contracts/interfaces/{0.5.x → v0.5.x}/IGenArt721CoreContractV1.sol +0 -0
  333. /package/contracts/interfaces/{0.5.x → v0.5.x}/IGenArt721CoreV2_PBAB.sol +0 -0
  334. /package/contracts/interfaces/{0.5.x → v0.5.x}/IRandomizer.sol +0 -0
  335. /package/contracts/interfaces/{0.8.x → v0.8.x}/IAdminACLV0.sol +0 -0
  336. /package/contracts/interfaces/{0.8.x → v0.8.x}/IArtblocksRoyaltyOverride.sol +0 -0
  337. /package/contracts/interfaces/{0.8.x → v0.8.x}/IBonusContract.sol +0 -0
  338. /package/contracts/interfaces/{0.8.x → v0.8.x}/IBytecodeStorageReader.sol +0 -0
  339. /package/contracts/interfaces/{0.8.x → v0.8.x}/IDelegationRegistry.sol +0 -0
  340. /package/contracts/interfaces/{0.8.x → v0.8.x}/IDependencyRegistryCompatibleV0.sol +0 -0
  341. /package/contracts/interfaces/{0.8.x → v0.8.x}/IEngineRegistryV0.sol +0 -0
  342. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlementV0.sol +0 -0
  343. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlementV1.sol +0 -0
  344. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlement_Mixin.sol +0 -0
  345. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpV0.sol +0 -0
  346. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpV1.sol +0 -0
  347. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDALinV0.sol +0 -0
  348. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDALinV1.sol +0 -0
  349. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV0.sol +0 -0
  350. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV1.sol +0 -0
  351. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV2.sol +0 -0
  352. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV0.sol +0 -0
  353. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV1.sol +0 -0
  354. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV2.sol +0 -0
  355. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterSEAV0.sol +0 -0
  356. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV0.sol +0 -0
  357. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV1.sol +0 -0
  358. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV2.sol +0 -0
  359. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractExposesHashSeed.sol +0 -0
  360. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV1.sol +0 -0
  361. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3.sol +0 -0
  362. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Base.sol +0 -0
  363. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Engine.sol +0 -0
  364. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Engine_Flex.sol +0 -0
  365. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreV2_PBAB.sol +0 -0
  366. /package/contracts/interfaces/{0.8.x → v0.8.x}/IManifold.sol +0 -0
  367. /package/contracts/interfaces/{0.8.x → v0.8.x}/IMinterBaseV0.sol +0 -0
  368. /package/contracts/interfaces/{0.8.x → v0.8.x}/IMinterFilterV0.sol +0 -0
  369. /package/contracts/interfaces/{0.8.x → v0.8.x}/IMintingAPICoreV0.sol +0 -0
  370. /package/contracts/interfaces/{0.8.x → v0.8.x}/IMintingAPIMinterV0.sol +0 -0
  371. /package/contracts/interfaces/{0.8.x → v0.8.x}/IPseudorandomAtomic.sol +0 -0
  372. /package/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizer.sol +0 -0
  373. /package/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizerPolyptychV0.sol +0 -0
  374. /package/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizerV2.sol +0 -0
  375. /package/contracts/interfaces/{0.8.x → v0.8.x}/IWETH.sol +0 -0
  376. /package/contracts/libs/{0.5.x → v0.5.x}/CustomERC721Metadata.sol +0 -0
  377. /package/contracts/libs/{0.5.x → v0.5.x}/IERC20.sol +0 -0
  378. /package/contracts/libs/{0.5.x → v0.5.x}/SafeMath.sol +0 -0
  379. /package/contracts/libs/{0.5.x → v0.5.x}/Strings.sol +0 -0
  380. /package/contracts/libs/{0.8.x → v0.8.x}/BytecodeStorageV0.sol +0 -0
  381. /package/contracts/libs/{0.8.x → v0.8.x}/BytecodeStorageV1.sol +0 -0
  382. /package/contracts/libs/{0.8.x → v0.8.x}/ERC721_PackedHashSeed.sol +0 -0
  383. /package/contracts/libs/{0.8.x → v0.8.x}/SSTORE2.sol +0 -0
@@ -0,0 +1,676 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "MinterSetPricePolyptychV5",
4
+ "sourceName": "contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "minterFilter",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "delegationRegistryAddress_",
16
+ "type": "address"
17
+ }
18
+ ],
19
+ "stateMutability": "nonpayable",
20
+ "type": "constructor"
21
+ },
22
+ {
23
+ "inputs": [
24
+ {
25
+ "internalType": "uint256",
26
+ "name": "projectId",
27
+ "type": "uint256"
28
+ },
29
+ {
30
+ "internalType": "address",
31
+ "name": "coreContract",
32
+ "type": "address"
33
+ },
34
+ {
35
+ "internalType": "address[]",
36
+ "name": "ownedNFTAddressesAdd",
37
+ "type": "address[]"
38
+ },
39
+ {
40
+ "internalType": "uint256[]",
41
+ "name": "ownedNFTProjectIdsAdd",
42
+ "type": "uint256[]"
43
+ },
44
+ {
45
+ "internalType": "address[]",
46
+ "name": "ownedNFTAddressesRemove",
47
+ "type": "address[]"
48
+ },
49
+ {
50
+ "internalType": "uint256[]",
51
+ "name": "ownedNFTProjectIdsRemove",
52
+ "type": "uint256[]"
53
+ }
54
+ ],
55
+ "name": "allowAndRemoveHoldersOfProjects",
56
+ "outputs": [],
57
+ "stateMutability": "nonpayable",
58
+ "type": "function"
59
+ },
60
+ {
61
+ "inputs": [
62
+ {
63
+ "internalType": "uint256",
64
+ "name": "projectId",
65
+ "type": "uint256"
66
+ },
67
+ {
68
+ "internalType": "address",
69
+ "name": "coreContract",
70
+ "type": "address"
71
+ },
72
+ {
73
+ "internalType": "address[]",
74
+ "name": "ownedNFTAddresses",
75
+ "type": "address[]"
76
+ },
77
+ {
78
+ "internalType": "uint256[]",
79
+ "name": "ownedNFTProjectIds",
80
+ "type": "uint256[]"
81
+ }
82
+ ],
83
+ "name": "allowHoldersOfProjects",
84
+ "outputs": [],
85
+ "stateMutability": "nonpayable",
86
+ "type": "function"
87
+ },
88
+ {
89
+ "inputs": [
90
+ {
91
+ "internalType": "uint256",
92
+ "name": "projectId",
93
+ "type": "uint256"
94
+ },
95
+ {
96
+ "internalType": "address",
97
+ "name": "coreContract",
98
+ "type": "address"
99
+ },
100
+ {
101
+ "internalType": "address",
102
+ "name": "ownedNFTAddress",
103
+ "type": "address"
104
+ },
105
+ {
106
+ "internalType": "uint256",
107
+ "name": "ownedNFTProjectId",
108
+ "type": "uint256"
109
+ }
110
+ ],
111
+ "name": "allowedProjectHolders",
112
+ "outputs": [
113
+ {
114
+ "internalType": "bool",
115
+ "name": "",
116
+ "type": "bool"
117
+ }
118
+ ],
119
+ "stateMutability": "view",
120
+ "type": "function"
121
+ },
122
+ {
123
+ "inputs": [],
124
+ "name": "delegationRegistryAddress",
125
+ "outputs": [
126
+ {
127
+ "internalType": "address",
128
+ "name": "",
129
+ "type": "address"
130
+ }
131
+ ],
132
+ "stateMutability": "view",
133
+ "type": "function"
134
+ },
135
+ {
136
+ "inputs": [
137
+ {
138
+ "internalType": "uint256",
139
+ "name": "projectId",
140
+ "type": "uint256"
141
+ },
142
+ {
143
+ "internalType": "address",
144
+ "name": "coreContract",
145
+ "type": "address"
146
+ }
147
+ ],
148
+ "name": "getCurrentPolyptychPanelId",
149
+ "outputs": [
150
+ {
151
+ "internalType": "uint256",
152
+ "name": "",
153
+ "type": "uint256"
154
+ }
155
+ ],
156
+ "stateMutability": "view",
157
+ "type": "function"
158
+ },
159
+ {
160
+ "inputs": [
161
+ {
162
+ "internalType": "uint256",
163
+ "name": "projectId",
164
+ "type": "uint256"
165
+ },
166
+ {
167
+ "internalType": "address",
168
+ "name": "coreContract",
169
+ "type": "address"
170
+ },
171
+ {
172
+ "internalType": "uint256",
173
+ "name": "panelId",
174
+ "type": "uint256"
175
+ },
176
+ {
177
+ "internalType": "bytes12",
178
+ "name": "hashSeed",
179
+ "type": "bytes12"
180
+ }
181
+ ],
182
+ "name": "getPolyptychPanelHashSeedIsMinted",
183
+ "outputs": [
184
+ {
185
+ "internalType": "bool",
186
+ "name": "",
187
+ "type": "bool"
188
+ }
189
+ ],
190
+ "stateMutability": "view",
191
+ "type": "function"
192
+ },
193
+ {
194
+ "inputs": [
195
+ {
196
+ "internalType": "uint256",
197
+ "name": "projectId",
198
+ "type": "uint256"
199
+ },
200
+ {
201
+ "internalType": "address",
202
+ "name": "coreContract",
203
+ "type": "address"
204
+ }
205
+ ],
206
+ "name": "getPriceInfo",
207
+ "outputs": [
208
+ {
209
+ "internalType": "bool",
210
+ "name": "isConfigured",
211
+ "type": "bool"
212
+ },
213
+ {
214
+ "internalType": "uint256",
215
+ "name": "tokenPriceInWei",
216
+ "type": "uint256"
217
+ },
218
+ {
219
+ "internalType": "string",
220
+ "name": "currencySymbol",
221
+ "type": "string"
222
+ },
223
+ {
224
+ "internalType": "address",
225
+ "name": "currencyAddress",
226
+ "type": "address"
227
+ }
228
+ ],
229
+ "stateMutability": "view",
230
+ "type": "function"
231
+ },
232
+ {
233
+ "inputs": [
234
+ {
235
+ "internalType": "uint256",
236
+ "name": "projectId",
237
+ "type": "uint256"
238
+ },
239
+ {
240
+ "internalType": "address",
241
+ "name": "coreContract",
242
+ "type": "address"
243
+ }
244
+ ],
245
+ "name": "incrementPolyptychProjectPanelId",
246
+ "outputs": [],
247
+ "stateMutability": "nonpayable",
248
+ "type": "function"
249
+ },
250
+ {
251
+ "inputs": [
252
+ {
253
+ "internalType": "uint256",
254
+ "name": "projectId",
255
+ "type": "uint256"
256
+ },
257
+ {
258
+ "internalType": "address",
259
+ "name": "coreContract",
260
+ "type": "address"
261
+ },
262
+ {
263
+ "internalType": "address",
264
+ "name": "ownedNFTAddress",
265
+ "type": "address"
266
+ },
267
+ {
268
+ "internalType": "uint256",
269
+ "name": "ownedNFTTokenId",
270
+ "type": "uint256"
271
+ }
272
+ ],
273
+ "name": "isAllowlistedNFT",
274
+ "outputs": [
275
+ {
276
+ "internalType": "bool",
277
+ "name": "",
278
+ "type": "bool"
279
+ }
280
+ ],
281
+ "stateMutability": "view",
282
+ "type": "function"
283
+ },
284
+ {
285
+ "inputs": [
286
+ {
287
+ "internalType": "address",
288
+ "name": "coreContract",
289
+ "type": "address"
290
+ }
291
+ ],
292
+ "name": "isEngineView",
293
+ "outputs": [
294
+ {
295
+ "internalType": "bool",
296
+ "name": "",
297
+ "type": "bool"
298
+ }
299
+ ],
300
+ "stateMutability": "view",
301
+ "type": "function"
302
+ },
303
+ {
304
+ "inputs": [
305
+ {
306
+ "internalType": "uint256",
307
+ "name": "projectId",
308
+ "type": "uint256"
309
+ },
310
+ {
311
+ "internalType": "address",
312
+ "name": "coreContract",
313
+ "type": "address"
314
+ },
315
+ {
316
+ "internalType": "uint24",
317
+ "name": "maxInvocations",
318
+ "type": "uint24"
319
+ }
320
+ ],
321
+ "name": "manuallyLimitProjectMaxInvocations",
322
+ "outputs": [],
323
+ "stateMutability": "nonpayable",
324
+ "type": "function"
325
+ },
326
+ {
327
+ "inputs": [
328
+ {
329
+ "internalType": "uint256",
330
+ "name": "projectId",
331
+ "type": "uint256"
332
+ },
333
+ {
334
+ "internalType": "address",
335
+ "name": "coreContract",
336
+ "type": "address"
337
+ }
338
+ ],
339
+ "name": "maxInvocationsProjectConfig",
340
+ "outputs": [
341
+ {
342
+ "components": [
343
+ {
344
+ "internalType": "bool",
345
+ "name": "maxHasBeenInvoked",
346
+ "type": "bool"
347
+ },
348
+ {
349
+ "internalType": "uint24",
350
+ "name": "maxInvocations",
351
+ "type": "uint24"
352
+ }
353
+ ],
354
+ "internalType": "struct MaxInvocationsLib.MaxInvocationsProjectConfig",
355
+ "name": "",
356
+ "type": "tuple"
357
+ }
358
+ ],
359
+ "stateMutability": "view",
360
+ "type": "function"
361
+ },
362
+ {
363
+ "inputs": [],
364
+ "name": "minterFilterAddress",
365
+ "outputs": [
366
+ {
367
+ "internalType": "address",
368
+ "name": "",
369
+ "type": "address"
370
+ }
371
+ ],
372
+ "stateMutability": "view",
373
+ "type": "function"
374
+ },
375
+ {
376
+ "inputs": [],
377
+ "name": "minterType",
378
+ "outputs": [
379
+ {
380
+ "internalType": "string",
381
+ "name": "",
382
+ "type": "string"
383
+ }
384
+ ],
385
+ "stateMutability": "view",
386
+ "type": "function"
387
+ },
388
+ {
389
+ "inputs": [],
390
+ "name": "minterVersion",
391
+ "outputs": [
392
+ {
393
+ "internalType": "string",
394
+ "name": "",
395
+ "type": "string"
396
+ }
397
+ ],
398
+ "stateMutability": "view",
399
+ "type": "function"
400
+ },
401
+ {
402
+ "inputs": [
403
+ {
404
+ "internalType": "uint256",
405
+ "name": "projectId",
406
+ "type": "uint256"
407
+ },
408
+ {
409
+ "internalType": "address",
410
+ "name": "coreContract",
411
+ "type": "address"
412
+ }
413
+ ],
414
+ "name": "projectMaxHasBeenInvoked",
415
+ "outputs": [
416
+ {
417
+ "internalType": "bool",
418
+ "name": "",
419
+ "type": "bool"
420
+ }
421
+ ],
422
+ "stateMutability": "view",
423
+ "type": "function"
424
+ },
425
+ {
426
+ "inputs": [
427
+ {
428
+ "internalType": "uint256",
429
+ "name": "projectId",
430
+ "type": "uint256"
431
+ },
432
+ {
433
+ "internalType": "address",
434
+ "name": "coreContract",
435
+ "type": "address"
436
+ }
437
+ ],
438
+ "name": "projectMaxInvocations",
439
+ "outputs": [
440
+ {
441
+ "internalType": "uint256",
442
+ "name": "",
443
+ "type": "uint256"
444
+ }
445
+ ],
446
+ "stateMutability": "view",
447
+ "type": "function"
448
+ },
449
+ {
450
+ "inputs": [
451
+ {
452
+ "internalType": "uint256",
453
+ "name": "projectId",
454
+ "type": "uint256"
455
+ },
456
+ {
457
+ "internalType": "address",
458
+ "name": "coreContract",
459
+ "type": "address"
460
+ },
461
+ {
462
+ "internalType": "address",
463
+ "name": "ownedNFTAddress",
464
+ "type": "address"
465
+ },
466
+ {
467
+ "internalType": "uint256",
468
+ "name": "ownedNFTTokenId",
469
+ "type": "uint256"
470
+ }
471
+ ],
472
+ "name": "purchase",
473
+ "outputs": [
474
+ {
475
+ "internalType": "uint256",
476
+ "name": "tokenId",
477
+ "type": "uint256"
478
+ }
479
+ ],
480
+ "stateMutability": "payable",
481
+ "type": "function"
482
+ },
483
+ {
484
+ "inputs": [
485
+ {
486
+ "internalType": "address",
487
+ "name": "to",
488
+ "type": "address"
489
+ },
490
+ {
491
+ "internalType": "uint256",
492
+ "name": "projectId",
493
+ "type": "uint256"
494
+ },
495
+ {
496
+ "internalType": "address",
497
+ "name": "coreContract",
498
+ "type": "address"
499
+ },
500
+ {
501
+ "internalType": "address",
502
+ "name": "ownedNFTAddress",
503
+ "type": "address"
504
+ },
505
+ {
506
+ "internalType": "uint256",
507
+ "name": "ownedNFTTokenId",
508
+ "type": "uint256"
509
+ },
510
+ {
511
+ "internalType": "address",
512
+ "name": "vault",
513
+ "type": "address"
514
+ }
515
+ ],
516
+ "name": "purchaseTo",
517
+ "outputs": [
518
+ {
519
+ "internalType": "uint256",
520
+ "name": "tokenId",
521
+ "type": "uint256"
522
+ }
523
+ ],
524
+ "stateMutability": "payable",
525
+ "type": "function"
526
+ },
527
+ {
528
+ "inputs": [
529
+ {
530
+ "internalType": "address",
531
+ "name": "to",
532
+ "type": "address"
533
+ },
534
+ {
535
+ "internalType": "uint256",
536
+ "name": "projectId",
537
+ "type": "uint256"
538
+ },
539
+ {
540
+ "internalType": "address",
541
+ "name": "coreContract",
542
+ "type": "address"
543
+ },
544
+ {
545
+ "internalType": "address",
546
+ "name": "ownedNFTAddress",
547
+ "type": "address"
548
+ },
549
+ {
550
+ "internalType": "uint256",
551
+ "name": "ownedNFTTokenId",
552
+ "type": "uint256"
553
+ }
554
+ ],
555
+ "name": "purchaseTo",
556
+ "outputs": [
557
+ {
558
+ "internalType": "uint256",
559
+ "name": "tokenId",
560
+ "type": "uint256"
561
+ }
562
+ ],
563
+ "stateMutability": "payable",
564
+ "type": "function"
565
+ },
566
+ {
567
+ "inputs": [
568
+ {
569
+ "internalType": "uint256",
570
+ "name": "projectId",
571
+ "type": "uint256"
572
+ },
573
+ {
574
+ "internalType": "address",
575
+ "name": "coreContract",
576
+ "type": "address"
577
+ },
578
+ {
579
+ "internalType": "address[]",
580
+ "name": "ownedNFTAddresses",
581
+ "type": "address[]"
582
+ },
583
+ {
584
+ "internalType": "uint256[]",
585
+ "name": "ownedNFTProjectIds",
586
+ "type": "uint256[]"
587
+ }
588
+ ],
589
+ "name": "removeHoldersOfProjects",
590
+ "outputs": [],
591
+ "stateMutability": "nonpayable",
592
+ "type": "function"
593
+ },
594
+ {
595
+ "inputs": [
596
+ {
597
+ "internalType": "uint256",
598
+ "name": "projectId",
599
+ "type": "uint256"
600
+ },
601
+ {
602
+ "internalType": "address",
603
+ "name": "coreContract",
604
+ "type": "address"
605
+ }
606
+ ],
607
+ "name": "setPriceProjectConfig",
608
+ "outputs": [
609
+ {
610
+ "components": [
611
+ {
612
+ "internalType": "uint248",
613
+ "name": "pricePerToken",
614
+ "type": "uint248"
615
+ },
616
+ {
617
+ "internalType": "bool",
618
+ "name": "priceIsConfigured",
619
+ "type": "bool"
620
+ }
621
+ ],
622
+ "internalType": "struct SetPriceLib.SetPriceProjectConfig",
623
+ "name": "",
624
+ "type": "tuple"
625
+ }
626
+ ],
627
+ "stateMutability": "view",
628
+ "type": "function"
629
+ },
630
+ {
631
+ "inputs": [
632
+ {
633
+ "internalType": "uint256",
634
+ "name": "projectId",
635
+ "type": "uint256"
636
+ },
637
+ {
638
+ "internalType": "address",
639
+ "name": "coreContract",
640
+ "type": "address"
641
+ }
642
+ ],
643
+ "name": "syncProjectMaxInvocationsToCore",
644
+ "outputs": [],
645
+ "stateMutability": "nonpayable",
646
+ "type": "function"
647
+ },
648
+ {
649
+ "inputs": [
650
+ {
651
+ "internalType": "uint256",
652
+ "name": "projectId",
653
+ "type": "uint256"
654
+ },
655
+ {
656
+ "internalType": "address",
657
+ "name": "coreContract",
658
+ "type": "address"
659
+ },
660
+ {
661
+ "internalType": "uint248",
662
+ "name": "pricePerTokenInWei",
663
+ "type": "uint248"
664
+ }
665
+ ],
666
+ "name": "updatePricePerTokenInWei",
667
+ "outputs": [],
668
+ "stateMutability": "nonpayable",
669
+ "type": "function"
670
+ }
671
+ ],
672
+ "bytecode": "0x6101006040523480156200001257600080fd5b506040516200292f3803806200292f8339810160408190526200003591620000b1565b60016000556001600160a01b03828116608081905260a052811660c081905260e08190526040519081527f836360d1b094a7de3c3eab3d1185f3a5939467c23d4a12709dbdbf8c8d7e2f3b9060200160405180910390a15050620000e9565b80516001600160a01b0381168114620000ac57600080fd5b919050565b60008060408385031215620000c557600080fd5b620000d08362000094565b9150620000e06020840162000094565b90509250929050565b60805160a05160c05160e05161280c6200012360003960006106b1015260006103580152600061084d01526000610453015261280c6000f3fe60806040526004361061011b5760003560e01c806301000da7146101205780630c49ef311461015557806319d29d7e1461017757806333c91bdb1461019857806339b87cf8146101b85780634869f3df146101d85780637e947f24146101f85780637fbbc005146102185780637ffb2eb81461022b5780638a605b511461024b5780639a94488a1461026b5780639b24c3c0146102ad5780639d923dff146102f3578063a03f599714610306578063b000e33414610326578063bf5bf5f814610346578063cce7c90914610392578063d3ddabe6146103b2578063d9bffbce146103f1578063d9eb16db14610411578063dd85582f14610441578063e9d1e8ac14610475578063f7f5e9d0146104ba578063fca23f4e146104da575b600080fd5b34801561012c57600080fd5b5061014061013b366004611f8c565b6104fa565b60405190151581526020015b60405180910390f35b34801561016157600080fd5b50610175610170366004611ff4565b610532565b005b61018a6101853660046120d4565b61055b565b60405190815260200161014c565b3480156101a457600080fd5b506101406101b336600461215a565b610986565b3480156101c457600080fd5b506101406101d33660046121a4565b61099d565b3480156101e457600080fd5b5061018a6101f33660046121ec565b6109ab565b34801561020457600080fd5b5061017561021336600461221c565b6109c0565b61018a6102263660046121a4565b6109fd565b34801561023757600080fd5b5061018a6102463660046121ec565b610a0e565b34801561025757600080fd5b5061017561026636600461226a565b610a1a565b34801561027757600080fd5b5061028b6102863660046121ec565b610a3b565b6040805182511515815260209283015162ffffff16928101929092520161014c565b3480156102b957600080fd5b506102cd6102c83660046121ec565b610a83565b6040805182516001600160f81b031681526020928301511515928101929092520161014c565b61018a6103013660046122f5565b610ad1565b34801561031257600080fd5b506101756103213660046121ec565b610aec565b34801561033257600080fd5b50610175610341366004612350565b610b05565b34801561035257600080fd5b5061037a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161014c565b34801561039e57600080fd5b506101406103ad3660046121ec565b610b1b565b3480156103be57600080fd5b506103e460405180604001604052806006815260200165076352e302e360d41b81525081565b60405161014c91906123df565b3480156103fd57600080fd5b5061017561040c3660046121ec565b610b27565b34801561041d57600080fd5b5061043161042c3660046121ec565b610b3c565b60405161014c94939291906123f2565b34801561044d57600080fd5b5061037a7f000000000000000000000000000000000000000000000000000000000000000081565b34801561048157600080fd5b506103e4604051806040016040528060198152602001784d696e7465725365745072696365506f6c797074796368563560381b81525081565b3480156104c657600080fd5b506101756104d536600461226a565b610b8e565b3480156104e657600080fd5b506101406104f53660046121a4565b610ba7565b60008061050683610be1565b8054909150610100900460ff1615610522575460ff1692915050565b61052b83610c1a565b9392505050565b61053d8a8a33610d90565b61054f8a8a8a8a8a8a8a8a8a8a610dd5565b50505050505050505050565b60006002600054036105b45760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b60026000556105c38686610df1565b60006105cf8787610e22565b90508034101561061a5760405162461bcd60e51b815260206004820152601660248201527526b4b7103b30b63ab2903a379036b4b73a103932b89760511b60448201526064016105ab565b61062687878787610e92565b61066a5760405162461bcd60e51b81526020600482015260156024820152744f6e6c7920616c6c6f776c6973746564204e46547360581b60448201526064016105ab565b336001600160a01b0384161561077257604051631574d39f60e31b81523360048201526001600160a01b0385811660248301528881166044830152606482018790526000917f00000000000000000000000000000000000000000000000000000000000000009091169063aba69cf890608401602060405180830381865afa1580156106fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071e919061243c565b90508061076d5760405162461bcd60e51b815260206004820152601e60248201527f496e76616c69642064656c65676174652d7661756c742070616972696e67000060448201526064016105ab565b849150505b604051630ea5613f60e01b81526004810189905287906000906001600160a01b03831690630ea5613f9060240160c060405180830381865afa1580156107bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e09190612457565b5050505050905060006107f38989610ee2565b90506108008b8b83610f4e565b600061080c8c8461105a565b90506108198b8284611074565b6040516117cd60e21b81526001600160a01b038e81166004830152602482018e90528c8116604483015286811660648301527f00000000000000000000000000000000000000000000000000000000000000001690615f34906084016020604051808303816000875af1158015610894573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b891906124b6565b96506108c58b8884611151565b50506108d1858a6111be565b60405163a47d29cb60e01b8152600481018b90526000906001600160a01b0384169063a47d29cb90602401602060405180830381865afa158015610919573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093d91906124cf565b90506000336001600160a01b038316146109575784610959565b8c5b90506109668a8a83611223565b50506109738a858b6112e6565b5050505060016000559695505050505050565b600061099485858585611395565b95945050505050565b600061099485858585610e92565b60006109b783836113d4565b90505b92915050565b6109cb838333610d90565b6109df8383836001600160f81b03166113f4565b6109e98383611453565b156109f8576109f88383610b27565b505050565b60006109943386868686600061055b565b60006109b78383611486565b610a25868633610d90565b610a338686868686866114a1565b505050505050565b6040805180820190915260008082526020820152610a5983836115bd565b60408051808201909152905460ff811615158252610100900462ffffff1660208201529392505050565b6040805180820190915260008082526020820152610aa18383611608565b6040805180820190915290546001600160f81b0381168252600160f81b900460ff16151560208201529392505050565b6000610ae28686868686600061055b565b9695505050505050565b610af7828233610d90565b610b01828261162f565b5050565b610b10838333610d90565b6109f88383836116d1565b60006109b783836117a7565b610b32828233610d90565b610b0182826117c0565b6000806060600080610b4e8787611608565b5460408051808201909152600381526208aa8960eb1b602082015260ff600160f81b830416996001600160f81b0390921698509650600095509350505050565b610b99868633610d90565b610a33868686868686611847565b6000610bb38585611950565b6001600160a01b038416600090815260209182526040808220858352909252205460ff169050949350505050565b6001600160a01b031660009081527f69f22dd730b53ff235fa96b4306a31bef5dad48fe4bac28b1ceebbce14401b396020526040902090565b6040516000602482018190526044820181905290819060640160408051601f198184030181529181526020820180516001600160e01b0316638639415b60e01b1790525190915060009081906001600160a01b03861690610c7c9085906124ec565b600060405180830381855afa9150503d8060008114610cb7576040519150601f19603f3d011682016040523d82523d6000602084013e610cbc565b606091505b509150915081610d1c5760405162461bcd60e51b815260206004820152602560248201527f6765745072696d617279526576656e756553706c69747328292063616c6c2066604482015264185a5b195960da1b60648201526084016105ab565b805160c0819003610d335750600095945050505050565b8061010003610d485750600195945050505050565b60405162461bcd60e51b815260206004820152601e60248201527f556e657870656374656420726576656e75652073706c6974206279746573000060448201526064016105ab565b610d9b838383611978565b6109f85760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b60448201526064016105ab565b610de38a8a8a8a8a8a6114a1565b61054f8a8a86868686611847565b6000610dfd83836115bd565b805490915060ff16156109f85760405162461bcd60e51b81526004016105ab90612508565b600080610e2f8484611608565b8054909150600160f81b900460ff16610e815760405162461bcd60e51b8152602060048201526014602482015273141c9a58d9481b9bdd0818dbdb999a59dd5c995960621b60448201526064016105ab565b546001600160f81b03169392505050565b600080610e9f8686611950565b90506000610eb0620f42408561254f565b6001600160a01b038616600090815260209384526040808220928252919093529091205460ff16915050949350505050565b604051634d01727d60e11b8152600481018290526000906001600160a01b03841690639a02e4fa90602401602060405180830381865afa158015610f2a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b79190612571565b6000610f5a8484611a01565b90506001600160a01b03198216610fae5760405162461bcd60e51b81526020600482015260186024820152774f6e6c79206e6f6e2d7a65726f206861736820736565647360401b60448201526064016105ab565b805462ffffff16600081815260018301602090815260408083206001600160a01b03198716845290915290205460ff16156110225760405162461bcd60e51b815260206004820152601460248201527314185b995b08185b1c9958591e481b5a5b9d195960621b60448201526064016105ab565b60009081526001918201602090815260408083206001600160a01b0319909516835293905291909120805460ff191690911790555050565b60008161106a620f42408561258e565b6109b791906125a5565b826001600160a01b03166336c7c12c6040518163ffffffff1660e01b81526004016020604051808303816000875af11580156110b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d891906124cf565b60405163dddceed160e01b81526001600160a01b038581166004830152602482018590526001600160a01b031984166044830152919091169063dddceed190606401600060405180830381600087803b15801561113457600080fd5b505af1158015611148573d6000803e3d6000fd5b50505050505050565b600061115d8484610ee2565b90506001600160a01b0319808216908316146111b85760405162461bcd60e51b815260206004820152601a602482015279155b995e1c1958dd1959081d1bdad95b881a185cda081cd9595960321b60448201526064016105ab565b50505050565b620f4240820460006111d082846115bd565b8054909150620f4240850660010190610100900462ffffff16808211156112095760405162461bcd60e51b81526004016105ab90612508565b808203610a3357825460ff19166001178355505050505050565b6040516331a9108f60e11b8152600481018390526000906001600160a01b03851690636352211e90602401602060405180830381865afa15801561126b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128f91906124cf565b9050816001600160a01b0316816001600160a01b0316146111b85760405162461bcd60e51b815260206004820152601160248201527013db9b1e481bdddb995c881bd988139195607a1b60448201526064016105ab565b34156109f85760006112f883346125b8565b9050801561138a57604051600090339083908381818185875af1925050503d8060008114611342576040519150601f19603f3d011682016040523d82523d6000602084013e611347565b606091505b50509050806113885760405162461bcd60e51b815260206004820152600d60248201526c1499599d5b990819985a5b1959609a1b60448201526064016105ab565b505b6111b8848484611a29565b6000806113a28686611a01565b6000948552600101602090815260408086206001600160a01b0319959095168652939052505090205460ff1692915050565b6000806113e184846115bd565b54610100900462ffffff16949350505050565b60006114008484611608565b600160f81b6001600160f81b03841617815560405190915082906001600160a01b0385169086907f98e99eae7ab1c56b5b882e049df69b522affbaa1a93afd3be411447a1606027890600090a450505050565b60008061146084846115bd565b8054909150610100900462ffffff1615801561147e5750805460ff16155b949350505050565b6000806114938484611a01565b5462ffffff16949350505050565b8281146114c05760405162461bcd60e51b81526004016105ab906125cb565b60006114cc8787611950565b90508360005b8181101561156a5760018360008989858181106114f1576114f161260c565b90506020020160208101906115069190611f8c565b6001600160a01b03166001600160a01b03168152602001908152602001600020600087878581811061153a5761153a61260c565b60209081029290920135835250810191909152604001600020805460ff19169115159190911790556001016114d2565b50866001600160a01b0316887fe4e108abe1d65a55b2c49a1586fb2afa6c3d79732947e37f71a6c23a5b08ff82888888886040516115ab9493929190612622565b60405180910390a35050505050505050565b60007f73e3af67f35f30fb72bbaaf6cc07b987364ed643c93ba201702e213464e877ee5b6001600160a01b039290921660009081526020928352604080822094825293909252502090565b60007efc986db700c71340c673de619c46ee721167fc4ea17804bb535c4c196aa7d76115e1565b600061163b8383611a01565b805490915081906000906116539062ffffff166126a0565b82546101009290920a62ffffff8181021990931691831602179091558154604080516f1c1bdb1e5c1d1e58da14185b995b125960821b81529190921660208201526001600160a01b0384169185917f1809fd1f08e6b0df08fd848757688435a0ab8520a51dcca23eba5a3c7f7280d6910160405180910390a3505050565b6000806116de8585611bea565b91509150808362ffffff1611156117075760405162461bcd60e51b81526004016105ab906126c2565b818362ffffff16101561172c5760405162461bcd60e51b81526004016105ab906126c2565b600061173886866115bd565b805462ffffff861685811463ffffffff19909216610100820260ff1916179190911782556040519081529091506001600160a01b0386169087907f1c3e74a6c6fefbaeee166b031cd2016349c6c863d5188b67c9bbd0b0dcb2e2379060200160405180910390a3505050505050565b6000806117b484846115bd565b5460ff16949350505050565b6000806117cd8484611bea565b9150915060006117dd85856115bd565b805484841463ffffffff1990911661010062ffffff86160260ff1916171781556040518381529091506001600160a01b0385169086907f1c3e74a6c6fefbaeee166b031cd2016349c6c863d5188b67c9bbd0b0dcb2e2379060200160405180910390a35050505050565b8281146118665760405162461bcd60e51b81526004016105ab906125cb565b60006118728787611950565b90508360005b8181101561190f57600083818989858181106118965761189661260c565b90506020020160208101906118ab9190611f8c565b6001600160a01b03166001600160a01b0316815260200190815260200160002060008787858181106118df576118df61260c565b60209081029290920135835250810191909152604001600020805460ff1916911515919091179055600101611878565b50866001600160a01b0316887f5728c49515724a90b87298ccfb6a8868ff0bfddf7e4fe298cea807dd815ced09888888886040516115ab9493929190612622565b60007f7805f013cae363c49df6acca2dcd8a8f0bd9005c2f87b85d8dbbce9098e4afd76115e1565b60405163a47d29cb60e01b8152600481018490526000906001600160a01b0384169063a47d29cb90602401602060405180830381865afa1580156119c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119e491906124cf565b6001600160a01b0316826001600160a01b03161490509392505050565b60007f56e45510048a51061054136e0136e5e31c79dc3b9d86e34df4ba37ce2773996d6115e1565b81600003611a3657505050565b6000611a4182611c68565b90506000806000806000806000808815611adf57604051638639415b60e01b8152600481018d9052602481018c90526001600160a01b038b1690638639415b9060440161010060405180830381865afa158015611aa2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ac691906126f3565b969e50949c50929a509098509650945092509050611b5f565b604051638639415b60e01b8152600481018d9052602481018c90526001600160a01b038b1690638639415b9060440160c060405180830381865afa158015611b2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b4f919061277b565b949c50929a509096509450925090505b8a8285611b6c898c6125a5565b611b7691906125a5565b611b8091906125a5565b14611bcc5760405162461bcd60e51b815260206004820152601c60248201527b496e76616c696420726576656e75652073706c697420746f74616c7360201b60448201526064016105ab565b611bdc86868a8a88888888611cb6565b505050505050505050505050565b604051630ea5613f60e01b81526004810183905260009081906001600160a01b03841690630ea5613f9060240160c060405180830381865afa158015611c34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c589190612457565b5093989297509195505050505050565b600080611c7483610be1565b8054909150610100900460ff1615611c90575460ff1692915050565b6000611c9b84610c1a565b825481151561ffff1990911617610100179092555092915050565b8715611d61576000876001600160a01b03168960405160006040518083038185875af1925050503d8060008114611d09576040519150601f19603f3d011682016040523d82523d6000602084013e611d0e565b606091505b5050905080611d5f5760405162461bcd60e51b815260206004820181905260248201527f506c6174666f726d2050726f7669646572207061796d656e74206661696c656460448201526064016105ab565b505b8515611e0c576000856001600160a01b03168760405160006040518083038185875af1925050503d8060008114611db4576040519150601f19603f3d011682016040523d82523d6000602084013e611db9565b606091505b5050905080611e0a5760405162461bcd60e51b815260206004820152601e60248201527f52656e6465722050726f7669646572207061796d656e74206661696c6564000060448201526064016105ab565b505b8315611eaf576000836001600160a01b03168560405160006040518083038185875af1925050503d8060008114611e5f576040519150601f19603f3d011682016040523d82523d6000602084013e611e64565b606091505b5050905080611ead5760405162461bcd60e51b8152602060048201526015602482015274105c9d1a5cdd081c185e5b595b9d0819985a5b1959605a1b60448201526064016105ab565b505b8115611f5a576000816001600160a01b03168360405160006040518083038185875af1925050503d8060008114611f02576040519150601f19603f3d011682016040523d82523d6000602084013e611f07565b606091505b5050905080611f585760405162461bcd60e51b815260206004820152601f60248201527f4164646974696f6e616c205061796565207061796d656e74206661696c65640060448201526064016105ab565b505b5050505050505050565b6001600160a01b0381168114611f7957600080fd5b50565b8035611f8781611f64565b919050565b600060208284031215611f9e57600080fd5b813561052b81611f64565b60008083601f840112611fbb57600080fd5b5081356001600160401b03811115611fd257600080fd5b6020830191508360208260051b8501011115611fed57600080fd5b9250929050565b60008060008060008060008060008060c08b8d03121561201357600080fd5b8a35995061202360208c01611f7c565b985060408b01356001600160401b038082111561203f57600080fd5b61204b8e838f01611fa9565b909a50985060608d013591508082111561206457600080fd5b6120708e838f01611fa9565b909850965060808d013591508082111561208957600080fd5b6120958e838f01611fa9565b909650945060a08d01359150808211156120ae57600080fd5b506120bb8d828e01611fa9565b915080935050809150509295989b9194979a5092959850565b60008060008060008060c087890312156120ed57600080fd5b86356120f881611f64565b955060208701359450604087013561210f81611f64565b9350606087013561211f81611f64565b92506080870135915060a087013561213681611f64565b809150509295509295509295565b6001600160a01b031981168114611f7957600080fd5b6000806000806080858703121561217057600080fd5b84359350602085013561218281611f64565b925060408501359150606085013561219981612144565b939692955090935050565b600080600080608085870312156121ba57600080fd5b8435935060208501356121cc81611f64565b925060408501356121dc81611f64565b9396929550929360600135925050565b600080604083850312156121ff57600080fd5b82359150602083013561221181611f64565b809150509250929050565b60008060006060848603121561223157600080fd5b83359250602084013561224381611f64565b915060408401356001600160f81b038116811461225f57600080fd5b809150509250925092565b6000806000806000806080878903121561228357600080fd5b86359550602087013561229581611f64565b945060408701356001600160401b03808211156122b157600080fd5b6122bd8a838b01611fa9565b909650945060608901359150808211156122d657600080fd5b506122e389828a01611fa9565b979a9699509497509295939492505050565b600080600080600060a0868803121561230d57600080fd5b853561231881611f64565b945060208601359350604086013561232f81611f64565b9250606086013561233f81611f64565b949793965091946080013592915050565b60008060006060848603121561236557600080fd5b83359250602084013561237781611f64565b9150604084013562ffffff8116811461225f57600080fd5b60005b838110156123aa578181015183820152602001612392565b50506000910152565b600081518084526123cb81602086016020860161238f565b601f01601f19169290920160200192915050565b6020815260006109b760208301846123b3565b841515815283602082015260806040820152600061241360808301856123b3565b905060018060a01b038316606083015295945050505050565b80518015158114611f8757600080fd5b60006020828403121561244e57600080fd5b6109b78261242c565b60008060008060008060c0878903121561247057600080fd5b86519550602087015194506124876040880161242c565b93506124956060880161242c565b9250608087015191506124aa60a0880161242c565b90509295509295509295565b6000602082840312156124c857600080fd5b5051919050565b6000602082840312156124e157600080fd5b815161052b81611f64565b600082516124fe81846020870161238f565b9190910192915050565b60208082526017908201527613585e081a5b9d9bd8d85d1a5bdb9cc81c995858da1959604a1b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008261256c57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561258357600080fd5b815161052b81612144565b80820281158282048414176109ba576109ba612539565b808201808211156109ba576109ba612539565b818103818111156109ba576109ba612539565b60208082526021908201527f546f6b656e486f6c6465724c69623a20617272617973206e6571206c656e67746040820152600d60fb1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6040808252810184905260008560608301825b8781101561266557823561264881611f64565b6001600160a01b0316825260209283019290910190600101612635565b5083810360208501528481526001600160fb1b0385111561268557600080fd5b8460051b915081866020830137016020019695505050505050565b600062ffffff8083168181036126b8576126b8612539565b6001019392505050565b602080825260179082015276496e76616c6964206d617820696e766f636174696f6e7360481b604082015260600190565b600080600080600080600080610100898b03121561271057600080fd5b88519750602089015161272281611f64565b60408a015160608b0151919850965061273a81611f64565b60808a015160a08b0151919650945061275281611f64565b60c08a015160e08b0151919450925061276a81611f64565b809150509295985092959890939650565b60008060008060008060c0878903121561279457600080fd5b8651955060208701516127a681611f64565b6040880151606089015191965094506127be81611f64565b608088015160a0890151919450925061213681611f6456fea264697066735822122049a0f6776cce106c8764e5c7f0a40a983c6cc4e9d28b95d4a9c3b4dcbb0fcfaa64736f6c63430008130033",
673
+ "deployedBytecode": "0x60806040526004361061011b5760003560e01c806301000da7146101205780630c49ef311461015557806319d29d7e1461017757806333c91bdb1461019857806339b87cf8146101b85780634869f3df146101d85780637e947f24146101f85780637fbbc005146102185780637ffb2eb81461022b5780638a605b511461024b5780639a94488a1461026b5780639b24c3c0146102ad5780639d923dff146102f3578063a03f599714610306578063b000e33414610326578063bf5bf5f814610346578063cce7c90914610392578063d3ddabe6146103b2578063d9bffbce146103f1578063d9eb16db14610411578063dd85582f14610441578063e9d1e8ac14610475578063f7f5e9d0146104ba578063fca23f4e146104da575b600080fd5b34801561012c57600080fd5b5061014061013b366004611f8c565b6104fa565b60405190151581526020015b60405180910390f35b34801561016157600080fd5b50610175610170366004611ff4565b610532565b005b61018a6101853660046120d4565b61055b565b60405190815260200161014c565b3480156101a457600080fd5b506101406101b336600461215a565b610986565b3480156101c457600080fd5b506101406101d33660046121a4565b61099d565b3480156101e457600080fd5b5061018a6101f33660046121ec565b6109ab565b34801561020457600080fd5b5061017561021336600461221c565b6109c0565b61018a6102263660046121a4565b6109fd565b34801561023757600080fd5b5061018a6102463660046121ec565b610a0e565b34801561025757600080fd5b5061017561026636600461226a565b610a1a565b34801561027757600080fd5b5061028b6102863660046121ec565b610a3b565b6040805182511515815260209283015162ffffff16928101929092520161014c565b3480156102b957600080fd5b506102cd6102c83660046121ec565b610a83565b6040805182516001600160f81b031681526020928301511515928101929092520161014c565b61018a6103013660046122f5565b610ad1565b34801561031257600080fd5b506101756103213660046121ec565b610aec565b34801561033257600080fd5b50610175610341366004612350565b610b05565b34801561035257600080fd5b5061037a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161014c565b34801561039e57600080fd5b506101406103ad3660046121ec565b610b1b565b3480156103be57600080fd5b506103e460405180604001604052806006815260200165076352e302e360d41b81525081565b60405161014c91906123df565b3480156103fd57600080fd5b5061017561040c3660046121ec565b610b27565b34801561041d57600080fd5b5061043161042c3660046121ec565b610b3c565b60405161014c94939291906123f2565b34801561044d57600080fd5b5061037a7f000000000000000000000000000000000000000000000000000000000000000081565b34801561048157600080fd5b506103e4604051806040016040528060198152602001784d696e7465725365745072696365506f6c797074796368563560381b81525081565b3480156104c657600080fd5b506101756104d536600461226a565b610b8e565b3480156104e657600080fd5b506101406104f53660046121a4565b610ba7565b60008061050683610be1565b8054909150610100900460ff1615610522575460ff1692915050565b61052b83610c1a565b9392505050565b61053d8a8a33610d90565b61054f8a8a8a8a8a8a8a8a8a8a610dd5565b50505050505050505050565b60006002600054036105b45760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b60026000556105c38686610df1565b60006105cf8787610e22565b90508034101561061a5760405162461bcd60e51b815260206004820152601660248201527526b4b7103b30b63ab2903a379036b4b73a103932b89760511b60448201526064016105ab565b61062687878787610e92565b61066a5760405162461bcd60e51b81526020600482015260156024820152744f6e6c7920616c6c6f776c6973746564204e46547360581b60448201526064016105ab565b336001600160a01b0384161561077257604051631574d39f60e31b81523360048201526001600160a01b0385811660248301528881166044830152606482018790526000917f00000000000000000000000000000000000000000000000000000000000000009091169063aba69cf890608401602060405180830381865afa1580156106fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071e919061243c565b90508061076d5760405162461bcd60e51b815260206004820152601e60248201527f496e76616c69642064656c65676174652d7661756c742070616972696e67000060448201526064016105ab565b849150505b604051630ea5613f60e01b81526004810189905287906000906001600160a01b03831690630ea5613f9060240160c060405180830381865afa1580156107bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e09190612457565b5050505050905060006107f38989610ee2565b90506108008b8b83610f4e565b600061080c8c8461105a565b90506108198b8284611074565b6040516117cd60e21b81526001600160a01b038e81166004830152602482018e90528c8116604483015286811660648301527f00000000000000000000000000000000000000000000000000000000000000001690615f34906084016020604051808303816000875af1158015610894573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b891906124b6565b96506108c58b8884611151565b50506108d1858a6111be565b60405163a47d29cb60e01b8152600481018b90526000906001600160a01b0384169063a47d29cb90602401602060405180830381865afa158015610919573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093d91906124cf565b90506000336001600160a01b038316146109575784610959565b8c5b90506109668a8a83611223565b50506109738a858b6112e6565b5050505060016000559695505050505050565b600061099485858585611395565b95945050505050565b600061099485858585610e92565b60006109b783836113d4565b90505b92915050565b6109cb838333610d90565b6109df8383836001600160f81b03166113f4565b6109e98383611453565b156109f8576109f88383610b27565b505050565b60006109943386868686600061055b565b60006109b78383611486565b610a25868633610d90565b610a338686868686866114a1565b505050505050565b6040805180820190915260008082526020820152610a5983836115bd565b60408051808201909152905460ff811615158252610100900462ffffff1660208201529392505050565b6040805180820190915260008082526020820152610aa18383611608565b6040805180820190915290546001600160f81b0381168252600160f81b900460ff16151560208201529392505050565b6000610ae28686868686600061055b565b9695505050505050565b610af7828233610d90565b610b01828261162f565b5050565b610b10838333610d90565b6109f88383836116d1565b60006109b783836117a7565b610b32828233610d90565b610b0182826117c0565b6000806060600080610b4e8787611608565b5460408051808201909152600381526208aa8960eb1b602082015260ff600160f81b830416996001600160f81b0390921698509650600095509350505050565b610b99868633610d90565b610a33868686868686611847565b6000610bb38585611950565b6001600160a01b038416600090815260209182526040808220858352909252205460ff169050949350505050565b6001600160a01b031660009081527f69f22dd730b53ff235fa96b4306a31bef5dad48fe4bac28b1ceebbce14401b396020526040902090565b6040516000602482018190526044820181905290819060640160408051601f198184030181529181526020820180516001600160e01b0316638639415b60e01b1790525190915060009081906001600160a01b03861690610c7c9085906124ec565b600060405180830381855afa9150503d8060008114610cb7576040519150601f19603f3d011682016040523d82523d6000602084013e610cbc565b606091505b509150915081610d1c5760405162461bcd60e51b815260206004820152602560248201527f6765745072696d617279526576656e756553706c69747328292063616c6c2066604482015264185a5b195960da1b60648201526084016105ab565b805160c0819003610d335750600095945050505050565b8061010003610d485750600195945050505050565b60405162461bcd60e51b815260206004820152601e60248201527f556e657870656374656420726576656e75652073706c6974206279746573000060448201526064016105ab565b610d9b838383611978565b6109f85760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b60448201526064016105ab565b610de38a8a8a8a8a8a6114a1565b61054f8a8a86868686611847565b6000610dfd83836115bd565b805490915060ff16156109f85760405162461bcd60e51b81526004016105ab90612508565b600080610e2f8484611608565b8054909150600160f81b900460ff16610e815760405162461bcd60e51b8152602060048201526014602482015273141c9a58d9481b9bdd0818dbdb999a59dd5c995960621b60448201526064016105ab565b546001600160f81b03169392505050565b600080610e9f8686611950565b90506000610eb0620f42408561254f565b6001600160a01b038616600090815260209384526040808220928252919093529091205460ff16915050949350505050565b604051634d01727d60e11b8152600481018290526000906001600160a01b03841690639a02e4fa90602401602060405180830381865afa158015610f2a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b79190612571565b6000610f5a8484611a01565b90506001600160a01b03198216610fae5760405162461bcd60e51b81526020600482015260186024820152774f6e6c79206e6f6e2d7a65726f206861736820736565647360401b60448201526064016105ab565b805462ffffff16600081815260018301602090815260408083206001600160a01b03198716845290915290205460ff16156110225760405162461bcd60e51b815260206004820152601460248201527314185b995b08185b1c9958591e481b5a5b9d195960621b60448201526064016105ab565b60009081526001918201602090815260408083206001600160a01b0319909516835293905291909120805460ff191690911790555050565b60008161106a620f42408561258e565b6109b791906125a5565b826001600160a01b03166336c7c12c6040518163ffffffff1660e01b81526004016020604051808303816000875af11580156110b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d891906124cf565b60405163dddceed160e01b81526001600160a01b038581166004830152602482018590526001600160a01b031984166044830152919091169063dddceed190606401600060405180830381600087803b15801561113457600080fd5b505af1158015611148573d6000803e3d6000fd5b50505050505050565b600061115d8484610ee2565b90506001600160a01b0319808216908316146111b85760405162461bcd60e51b815260206004820152601a602482015279155b995e1c1958dd1959081d1bdad95b881a185cda081cd9595960321b60448201526064016105ab565b50505050565b620f4240820460006111d082846115bd565b8054909150620f4240850660010190610100900462ffffff16808211156112095760405162461bcd60e51b81526004016105ab90612508565b808203610a3357825460ff19166001178355505050505050565b6040516331a9108f60e11b8152600481018390526000906001600160a01b03851690636352211e90602401602060405180830381865afa15801561126b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128f91906124cf565b9050816001600160a01b0316816001600160a01b0316146111b85760405162461bcd60e51b815260206004820152601160248201527013db9b1e481bdddb995c881bd988139195607a1b60448201526064016105ab565b34156109f85760006112f883346125b8565b9050801561138a57604051600090339083908381818185875af1925050503d8060008114611342576040519150601f19603f3d011682016040523d82523d6000602084013e611347565b606091505b50509050806113885760405162461bcd60e51b815260206004820152600d60248201526c1499599d5b990819985a5b1959609a1b60448201526064016105ab565b505b6111b8848484611a29565b6000806113a28686611a01565b6000948552600101602090815260408086206001600160a01b0319959095168652939052505090205460ff1692915050565b6000806113e184846115bd565b54610100900462ffffff16949350505050565b60006114008484611608565b600160f81b6001600160f81b03841617815560405190915082906001600160a01b0385169086907f98e99eae7ab1c56b5b882e049df69b522affbaa1a93afd3be411447a1606027890600090a450505050565b60008061146084846115bd565b8054909150610100900462ffffff1615801561147e5750805460ff16155b949350505050565b6000806114938484611a01565b5462ffffff16949350505050565b8281146114c05760405162461bcd60e51b81526004016105ab906125cb565b60006114cc8787611950565b90508360005b8181101561156a5760018360008989858181106114f1576114f161260c565b90506020020160208101906115069190611f8c565b6001600160a01b03166001600160a01b03168152602001908152602001600020600087878581811061153a5761153a61260c565b60209081029290920135835250810191909152604001600020805460ff19169115159190911790556001016114d2565b50866001600160a01b0316887fe4e108abe1d65a55b2c49a1586fb2afa6c3d79732947e37f71a6c23a5b08ff82888888886040516115ab9493929190612622565b60405180910390a35050505050505050565b60007f73e3af67f35f30fb72bbaaf6cc07b987364ed643c93ba201702e213464e877ee5b6001600160a01b039290921660009081526020928352604080822094825293909252502090565b60007efc986db700c71340c673de619c46ee721167fc4ea17804bb535c4c196aa7d76115e1565b600061163b8383611a01565b805490915081906000906116539062ffffff166126a0565b82546101009290920a62ffffff8181021990931691831602179091558154604080516f1c1bdb1e5c1d1e58da14185b995b125960821b81529190921660208201526001600160a01b0384169185917f1809fd1f08e6b0df08fd848757688435a0ab8520a51dcca23eba5a3c7f7280d6910160405180910390a3505050565b6000806116de8585611bea565b91509150808362ffffff1611156117075760405162461bcd60e51b81526004016105ab906126c2565b818362ffffff16101561172c5760405162461bcd60e51b81526004016105ab906126c2565b600061173886866115bd565b805462ffffff861685811463ffffffff19909216610100820260ff1916179190911782556040519081529091506001600160a01b0386169087907f1c3e74a6c6fefbaeee166b031cd2016349c6c863d5188b67c9bbd0b0dcb2e2379060200160405180910390a3505050505050565b6000806117b484846115bd565b5460ff16949350505050565b6000806117cd8484611bea565b9150915060006117dd85856115bd565b805484841463ffffffff1990911661010062ffffff86160260ff1916171781556040518381529091506001600160a01b0385169086907f1c3e74a6c6fefbaeee166b031cd2016349c6c863d5188b67c9bbd0b0dcb2e2379060200160405180910390a35050505050565b8281146118665760405162461bcd60e51b81526004016105ab906125cb565b60006118728787611950565b90508360005b8181101561190f57600083818989858181106118965761189661260c565b90506020020160208101906118ab9190611f8c565b6001600160a01b03166001600160a01b0316815260200190815260200160002060008787858181106118df576118df61260c565b60209081029290920135835250810191909152604001600020805460ff1916911515919091179055600101611878565b50866001600160a01b0316887f5728c49515724a90b87298ccfb6a8868ff0bfddf7e4fe298cea807dd815ced09888888886040516115ab9493929190612622565b60007f7805f013cae363c49df6acca2dcd8a8f0bd9005c2f87b85d8dbbce9098e4afd76115e1565b60405163a47d29cb60e01b8152600481018490526000906001600160a01b0384169063a47d29cb90602401602060405180830381865afa1580156119c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119e491906124cf565b6001600160a01b0316826001600160a01b03161490509392505050565b60007f56e45510048a51061054136e0136e5e31c79dc3b9d86e34df4ba37ce2773996d6115e1565b81600003611a3657505050565b6000611a4182611c68565b90506000806000806000806000808815611adf57604051638639415b60e01b8152600481018d9052602481018c90526001600160a01b038b1690638639415b9060440161010060405180830381865afa158015611aa2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ac691906126f3565b969e50949c50929a509098509650945092509050611b5f565b604051638639415b60e01b8152600481018d9052602481018c90526001600160a01b038b1690638639415b9060440160c060405180830381865afa158015611b2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b4f919061277b565b949c50929a509096509450925090505b8a8285611b6c898c6125a5565b611b7691906125a5565b611b8091906125a5565b14611bcc5760405162461bcd60e51b815260206004820152601c60248201527b496e76616c696420726576656e75652073706c697420746f74616c7360201b60448201526064016105ab565b611bdc86868a8a88888888611cb6565b505050505050505050505050565b604051630ea5613f60e01b81526004810183905260009081906001600160a01b03841690630ea5613f9060240160c060405180830381865afa158015611c34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c589190612457565b5093989297509195505050505050565b600080611c7483610be1565b8054909150610100900460ff1615611c90575460ff1692915050565b6000611c9b84610c1a565b825481151561ffff1990911617610100179092555092915050565b8715611d61576000876001600160a01b03168960405160006040518083038185875af1925050503d8060008114611d09576040519150601f19603f3d011682016040523d82523d6000602084013e611d0e565b606091505b5050905080611d5f5760405162461bcd60e51b815260206004820181905260248201527f506c6174666f726d2050726f7669646572207061796d656e74206661696c656460448201526064016105ab565b505b8515611e0c576000856001600160a01b03168760405160006040518083038185875af1925050503d8060008114611db4576040519150601f19603f3d011682016040523d82523d6000602084013e611db9565b606091505b5050905080611e0a5760405162461bcd60e51b815260206004820152601e60248201527f52656e6465722050726f7669646572207061796d656e74206661696c6564000060448201526064016105ab565b505b8315611eaf576000836001600160a01b03168560405160006040518083038185875af1925050503d8060008114611e5f576040519150601f19603f3d011682016040523d82523d6000602084013e611e64565b606091505b5050905080611ead5760405162461bcd60e51b8152602060048201526015602482015274105c9d1a5cdd081c185e5b595b9d0819985a5b1959605a1b60448201526064016105ab565b505b8115611f5a576000816001600160a01b03168360405160006040518083038185875af1925050503d8060008114611f02576040519150601f19603f3d011682016040523d82523d6000602084013e611f07565b606091505b5050905080611f585760405162461bcd60e51b815260206004820152601f60248201527f4164646974696f6e616c205061796565207061796d656e74206661696c65640060448201526064016105ab565b505b5050505050505050565b6001600160a01b0381168114611f7957600080fd5b50565b8035611f8781611f64565b919050565b600060208284031215611f9e57600080fd5b813561052b81611f64565b60008083601f840112611fbb57600080fd5b5081356001600160401b03811115611fd257600080fd5b6020830191508360208260051b8501011115611fed57600080fd5b9250929050565b60008060008060008060008060008060c08b8d03121561201357600080fd5b8a35995061202360208c01611f7c565b985060408b01356001600160401b038082111561203f57600080fd5b61204b8e838f01611fa9565b909a50985060608d013591508082111561206457600080fd5b6120708e838f01611fa9565b909850965060808d013591508082111561208957600080fd5b6120958e838f01611fa9565b909650945060a08d01359150808211156120ae57600080fd5b506120bb8d828e01611fa9565b915080935050809150509295989b9194979a5092959850565b60008060008060008060c087890312156120ed57600080fd5b86356120f881611f64565b955060208701359450604087013561210f81611f64565b9350606087013561211f81611f64565b92506080870135915060a087013561213681611f64565b809150509295509295509295565b6001600160a01b031981168114611f7957600080fd5b6000806000806080858703121561217057600080fd5b84359350602085013561218281611f64565b925060408501359150606085013561219981612144565b939692955090935050565b600080600080608085870312156121ba57600080fd5b8435935060208501356121cc81611f64565b925060408501356121dc81611f64565b9396929550929360600135925050565b600080604083850312156121ff57600080fd5b82359150602083013561221181611f64565b809150509250929050565b60008060006060848603121561223157600080fd5b83359250602084013561224381611f64565b915060408401356001600160f81b038116811461225f57600080fd5b809150509250925092565b6000806000806000806080878903121561228357600080fd5b86359550602087013561229581611f64565b945060408701356001600160401b03808211156122b157600080fd5b6122bd8a838b01611fa9565b909650945060608901359150808211156122d657600080fd5b506122e389828a01611fa9565b979a9699509497509295939492505050565b600080600080600060a0868803121561230d57600080fd5b853561231881611f64565b945060208601359350604086013561232f81611f64565b9250606086013561233f81611f64565b949793965091946080013592915050565b60008060006060848603121561236557600080fd5b83359250602084013561237781611f64565b9150604084013562ffffff8116811461225f57600080fd5b60005b838110156123aa578181015183820152602001612392565b50506000910152565b600081518084526123cb81602086016020860161238f565b601f01601f19169290920160200192915050565b6020815260006109b760208301846123b3565b841515815283602082015260806040820152600061241360808301856123b3565b905060018060a01b038316606083015295945050505050565b80518015158114611f8757600080fd5b60006020828403121561244e57600080fd5b6109b78261242c565b60008060008060008060c0878903121561247057600080fd5b86519550602087015194506124876040880161242c565b93506124956060880161242c565b9250608087015191506124aa60a0880161242c565b90509295509295509295565b6000602082840312156124c857600080fd5b5051919050565b6000602082840312156124e157600080fd5b815161052b81611f64565b600082516124fe81846020870161238f565b9190910192915050565b60208082526017908201527613585e081a5b9d9bd8d85d1a5bdb9cc81c995858da1959604a1b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008261256c57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561258357600080fd5b815161052b81612144565b80820281158282048414176109ba576109ba612539565b808201808211156109ba576109ba612539565b818103818111156109ba576109ba612539565b60208082526021908201527f546f6b656e486f6c6465724c69623a20617272617973206e6571206c656e67746040820152600d60fb1b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6040808252810184905260008560608301825b8781101561266557823561264881611f64565b6001600160a01b0316825260209283019290910190600101612635565b5083810360208501528481526001600160fb1b0385111561268557600080fd5b8460051b915081866020830137016020019695505050505050565b600062ffffff8083168181036126b8576126b8612539565b6001019392505050565b602080825260179082015276496e76616c6964206d617820696e766f636174696f6e7360481b604082015260600190565b600080600080600080600080610100898b03121561271057600080fd5b88519750602089015161272281611f64565b60408a015160608b0151919850965061273a81611f64565b60808a015160a08b0151919650945061275281611f64565b60c08a015160e08b0151919450925061276a81611f64565b809150509295985092959890939650565b60008060008060008060c0878903121561279457600080fd5b8651955060208701516127a681611f64565b6040880151606089015191965094506127be81611f64565b608088015160a0890151919450925061213681611f6456fea264697066735822122049a0f6776cce106c8764e5c7f0a40a983c6cc4e9d28b95d4a9c3b4dcbb0fcfaa64736f6c63430008130033",
674
+ "linkReferences": {},
675
+ "deployedLinkReferences": {}
676
+ }