@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
@@ -222,8 +222,8 @@
222
222
  "type": "function"
223
223
  }
224
224
  ],
225
- "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6109798061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea2646970667358221220797e822abf3dddfc5839268400bd6f44456633545ed787a396eff48fe7558f8664736f6c63430008130033",
226
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea2646970667358221220797e822abf3dddfc5839268400bd6f44456633545ed787a396eff48fe7558f8664736f6c63430008130033",
225
+ "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6109798061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea2646970667358221220e362a42aed7ab9c328a51adfb720f1be449cce62f0df5111af499937cb31a8b464736f6c63430008130033",
226
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea2646970667358221220e362a42aed7ab9c328a51adfb720f1be449cce62f0df5111af499937cb31a8b464736f6c63430008130033",
227
227
  "linkReferences": {},
228
228
  "deployedLinkReferences": {}
229
229
  }
@@ -95,8 +95,8 @@
95
95
  "type": "function"
96
96
  }
97
97
  ],
98
- "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6104738061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea2646970667358221220d6c309e30d420b9cbc3924e6b52b74db2c8ba70e799ec10081718eb251e6e83464736f6c63430008130033",
99
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea2646970667358221220d6c309e30d420b9cbc3924e6b52b74db2c8ba70e799ec10081718eb251e6e83464736f6c63430008130033",
98
+ "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6104738061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea264697066735822122059063b2721d87af720434e4370cc34d8942be0240ec6518062a67096cb5b8d0e64736f6c63430008130033",
99
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea264697066735822122059063b2721d87af720434e4370cc34d8942be0240ec6518062a67096cb5b8d0e64736f6c63430008130033",
100
100
  "linkReferences": {},
101
101
  "deployedLinkReferences": {}
102
102
  }
@@ -23,8 +23,8 @@
23
23
  "type": "function"
24
24
  }
25
25
  ],
26
- "bytecode": "0x608060405234801561001057600080fd5b50610175806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806358fb597c14610030575b600080fd5b61004361003e3660046100c2565b610055565b60405190815260200160405180910390f35b60004282436100656001826100f1565b408361007260c88261010a565b61007d90600161012c565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156100d457600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610104576101046100db565b92915050565b60008261012757634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610104576101046100db56fea2646970667358221220b7d4049e3941ba5c6ae828fd86b617768c7d592e847a8a6bf45b14ec45f1c5ee64736f6c63430008130033",
27
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806358fb597c14610030575b600080fd5b61004361003e3660046100c2565b610055565b60405190815260200160405180910390f35b60004282436100656001826100f1565b408361007260c88261010a565b61007d90600161012c565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156100d457600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610104576101046100db565b92915050565b60008261012757634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610104576101046100db56fea2646970667358221220b7d4049e3941ba5c6ae828fd86b617768c7d592e847a8a6bf45b14ec45f1c5ee64736f6c63430008130033",
26
+ "bytecode": "0x608060405234801561001057600080fd5b50610175806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c806358fb597c14610030575b600080fd5b61004361003e3660046100c2565b610055565b60405190815260200160405180910390f35b60004282436100656001826100f1565b408361007260c88261010a565b61007d90600161012c565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156100d457600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610104576101046100db565b92915050565b60008261012757634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610104576101046100db56fea2646970667358221220cc447985dafecea33e6412366f38f2b47a1756467bf4f34495a64fecdb675f0164736f6c63430008130033",
27
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c806358fb597c14610030575b600080fd5b61004361003e3660046100c2565b610055565b60405190815260200160405180910390f35b60004282436100656001826100f1565b408361007260c88261010a565b61007d90600161012c565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156100d457600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610104576101046100db565b92915050565b60008261012757634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610104576101046100db56fea2646970667358221220cc447985dafecea33e6412366f38f2b47a1756467bf4f34495a64fecdb675f0164736f6c63430008130033",
28
28
  "linkReferences": {},
29
29
  "deployedLinkReferences": {}
30
30
  }
@@ -7,7 +7,7 @@
7
7
  "inputs": [
8
8
  {
9
9
  "internalType": "address",
10
- "name": "_pseudorandomAtomicContract",
10
+ "name": "pseudorandomAtomicContract_",
11
11
  "type": "address"
12
12
  }
13
13
  ],
@@ -23,6 +23,12 @@
23
23
  "name": "coreContract",
24
24
  "type": "address"
25
25
  },
26
+ {
27
+ "indexed": true,
28
+ "internalType": "uint256",
29
+ "name": "projectId",
30
+ "type": "uint256"
31
+ },
26
32
  {
27
33
  "indexed": true,
28
34
  "internalType": "address",
@@ -30,7 +36,7 @@
30
36
  "type": "address"
31
37
  }
32
38
  ],
33
- "name": "HashSeedSetterForCoreUpdated",
39
+ "name": "HashSeedSetterForProjectUpdated",
34
40
  "type": "event"
35
41
  },
36
42
  {
@@ -51,11 +57,11 @@
51
57
  {
52
58
  "indexed": false,
53
59
  "internalType": "bool",
54
- "name": "isPolyptych",
60
+ "name": "usingHashSeedSetter",
55
61
  "type": "bool"
56
62
  }
57
63
  ],
58
- "name": "ProjectIsPolyptychUpdated",
64
+ "name": "ProjectUsingHashSeedSetterUpdated",
59
65
  "type": "event"
60
66
  },
61
67
  {
@@ -75,7 +81,7 @@
75
81
  "inputs": [
76
82
  {
77
83
  "internalType": "uint256",
78
- "name": "_tokenId",
84
+ "name": "tokenId",
79
85
  "type": "uint256"
80
86
  }
81
87
  ],
@@ -88,8 +94,13 @@
88
94
  "inputs": [
89
95
  {
90
96
  "internalType": "address",
91
- "name": "_coreContract",
97
+ "name": "coreContract",
92
98
  "type": "address"
99
+ },
100
+ {
101
+ "internalType": "uint256",
102
+ "name": "projectId",
103
+ "type": "uint256"
93
104
  }
94
105
  ],
95
106
  "name": "hashSeedSetterContracts",
@@ -107,16 +118,16 @@
107
118
  "inputs": [
108
119
  {
109
120
  "internalType": "address",
110
- "name": "_coreContract",
121
+ "name": "coreContract",
111
122
  "type": "address"
112
123
  },
113
124
  {
114
125
  "internalType": "uint256",
115
- "name": "_tokenId",
126
+ "name": "tokenId",
116
127
  "type": "uint256"
117
128
  }
118
129
  ],
119
- "name": "polyptychHashSeed",
130
+ "name": "preAssignedHashSeed",
120
131
  "outputs": [
121
132
  {
122
133
  "internalType": "bytes12",
@@ -131,20 +142,43 @@
131
142
  "inputs": [
132
143
  {
133
144
  "internalType": "address",
134
- "name": "_coreContract",
145
+ "name": "coreContract",
135
146
  "type": "address"
136
147
  },
137
148
  {
138
149
  "internalType": "uint256",
139
- "name": "_projectId",
150
+ "name": "tokenId",
140
151
  "type": "uint256"
152
+ },
153
+ {
154
+ "internalType": "bytes12",
155
+ "name": "hashSeed",
156
+ "type": "bytes12"
141
157
  }
142
158
  ],
143
- "name": "projectIsPolyptych",
159
+ "name": "preSetHashSeed",
160
+ "outputs": [],
161
+ "stateMutability": "nonpayable",
162
+ "type": "function"
163
+ },
164
+ {
165
+ "inputs": [
166
+ {
167
+ "internalType": "address",
168
+ "name": "coreContract",
169
+ "type": "address"
170
+ },
171
+ {
172
+ "internalType": "uint256",
173
+ "name": "projectId",
174
+ "type": "uint256"
175
+ }
176
+ ],
177
+ "name": "projectUsesHashSeedSetter",
144
178
  "outputs": [
145
179
  {
146
180
  "internalType": "bool",
147
- "name": "_isPolyptych",
181
+ "name": "usingHashSeedSetter",
148
182
  "type": "bool"
149
183
  }
150
184
  ],
@@ -168,39 +202,21 @@
168
202
  "inputs": [
169
203
  {
170
204
  "internalType": "address",
171
- "name": "_coreContract",
172
- "type": "address"
173
- },
174
- {
175
- "internalType": "address",
176
- "name": "_hashSeedSetterContract",
177
- "type": "address"
178
- }
179
- ],
180
- "name": "setHashSeedSetterContract",
181
- "outputs": [],
182
- "stateMutability": "nonpayable",
183
- "type": "function"
184
- },
185
- {
186
- "inputs": [
187
- {
188
- "internalType": "address",
189
- "name": "_coreContract",
205
+ "name": "coreContract",
190
206
  "type": "address"
191
207
  },
192
208
  {
193
209
  "internalType": "uint256",
194
- "name": "_tokenId",
210
+ "name": "projectId",
195
211
  "type": "uint256"
196
212
  },
197
213
  {
198
- "internalType": "bytes12",
199
- "name": "_hashSeed",
200
- "type": "bytes12"
214
+ "internalType": "address",
215
+ "name": "hashSeedSetterContract",
216
+ "type": "address"
201
217
  }
202
218
  ],
203
- "name": "setPolyptychHashSeed",
219
+ "name": "setHashSeedSetterContract",
204
220
  "outputs": [],
205
221
  "stateMutability": "nonpayable",
206
222
  "type": "function"
@@ -209,23 +225,23 @@
209
225
  "inputs": [
210
226
  {
211
227
  "internalType": "address",
212
- "name": "_coreContract",
228
+ "name": "coreContract",
213
229
  "type": "address"
214
230
  },
215
231
  {
216
232
  "internalType": "uint256",
217
- "name": "_projectId",
233
+ "name": "projectId",
218
234
  "type": "uint256"
219
235
  }
220
236
  ],
221
- "name": "toggleProjectIsPolyptych",
237
+ "name": "toggleProjectUseAssignedHashSeed",
222
238
  "outputs": [],
223
239
  "stateMutability": "nonpayable",
224
240
  "type": "function"
225
241
  }
226
242
  ],
227
- "bytecode": "0x60a060405234801561001057600080fd5b5060405161096638038061096683398101604081905261002f9161006d565b6001600160a01b03811660808190526040517f2ad63d43bf15d4fb27447dac9430a7e357192317067d6a79f145ae0893867d2890600090a25061009d565b60006020828403121561007f57600080fd5b81516001600160a01b038116811461009657600080fd5b9392505050565b6080516108a86100be6000396000818160f3015261059c01526108a86000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c80633f44a7b11461007d57806356df6484146100925780635a548a64146100a5578063b310c792146100ee578063b628171a14610115578063d62580f614610128578063e1f302e21461013b578063f022fbfa14610184575b600080fd5b61009061008b36600461070e565b6101d4565b005b6100906100a036600461075d565b610219565b6100d16100b3366004610796565b6001600160a01b039081166000908152600260205260409020541690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d17f000000000000000000000000000000000000000000000000000000000000000081565b6100906101233660046107b3565b610281565b6100906101363660046107cc565b6103b6565b6101746101493660046107cc565b6001600160a01b03919091166000908152600160209081526040808320938352929052205460ff1690565b60405190151581526020016100e5565b6101bb6101923660046107cc565b6001600160a01b0391909116600090815260208181526040808320938352929052205460a01b90565b6040516001600160a01b031990911681526020016100e5565b6101dd83610438565b6001600160a01b03929092166000908152602081815260408083209383529290522080546001600160601b03191660a09290921c919091179055565b61022a826315b7d92160e21b6104a4565b6001600160a01b0382811660008181526002602052604080822080546001600160a01b0319169486169485179055517f8b02f29079c5db681ff18c5aa68c088f932a30c901f5efb857ba16f958cea5e09190a35050565b336000610291620f4240846107f8565b6001600160a01b03831660009081526001602090815260408083208484529091528120549192509060ff16156102f657506001600160a01b03821660009081526020818152604080832086845290915290205460a01b6001600160a01b031916610303565b6103008385610571565b90505b60008190036103535760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b60448201526064015b60405180910390fd5b60405161078f60e21b815260048101859052602481018290526001600160a01b03841690611e3c90604401600060405180830381600087803b15801561039857600080fd5b505af11580156103ac573d6000803e3d6000fd5b5050505050505050565b6103c08282610642565b6001600160a01b0382166000818152600160209081526040808320858452825291829020805460ff19811660ff91821615908117909255835194855291840185905216151582820152517fcff1f4ec3e5344bcec0d8aeafb939f623ee7b2f4bb64ffc9abbb6dc2d3a65d719181900360600190a15050565b6001600160a01b038181166000908152600260205260409020541633146104a15760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79204861736820536565642053657474657220436f6e74726163740000604482015260640161034a565b50565b60405163230448b160e01b81523360048201523060248201526001600160e01b0319821660448201526001600160a01b0383169063230448b1906064016020604051808303816000875af1158015610500573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610524919061081a565b61056d5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161034a565b5050565b6040516001600160601b0319606084901b166020820152603481018290526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358fb597c90605401604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016105fa91815260200190565b602060405180830381865afa158015610617573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063b919061083c565b9392505050565b60405163a47d29cb60e01b8152600481018290526001600160a01b0383169063a47d29cb90602401602060405180830381865afa158015610687573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ab9190610855565b6001600160a01b0316336001600160a01b03161461056d5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161034a565b6001600160a01b03811681146104a157600080fd5b60008060006060848603121561072357600080fd5b833561072e816106f9565b92506020840135915060408401356001600160a01b03198116811461075257600080fd5b809150509250925092565b6000806040838503121561077057600080fd5b823561077b816106f9565b9150602083013561078b816106f9565b809150509250929050565b6000602082840312156107a857600080fd5b813561063b816106f9565b6000602082840312156107c557600080fd5b5035919050565b600080604083850312156107df57600080fd5b82356107ea816106f9565b946020939093013593505050565b60008261081557634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561082c57600080fd5b8151801515811461063b57600080fd5b60006020828403121561084e57600080fd5b5051919050565b60006020828403121561086757600080fd5b815161063b816106f956fea26469706673582212208ca8ecf64c6c7f4dd89d92fae596ed2db44f00df3419e920aae6d589a596db0d64736f6c63430008130033",
228
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100785760003560e01c80633f44a7b11461007d57806356df6484146100925780635a548a64146100a5578063b310c792146100ee578063b628171a14610115578063d62580f614610128578063e1f302e21461013b578063f022fbfa14610184575b600080fd5b61009061008b36600461070e565b6101d4565b005b6100906100a036600461075d565b610219565b6100d16100b3366004610796565b6001600160a01b039081166000908152600260205260409020541690565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d17f000000000000000000000000000000000000000000000000000000000000000081565b6100906101233660046107b3565b610281565b6100906101363660046107cc565b6103b6565b6101746101493660046107cc565b6001600160a01b03919091166000908152600160209081526040808320938352929052205460ff1690565b60405190151581526020016100e5565b6101bb6101923660046107cc565b6001600160a01b0391909116600090815260208181526040808320938352929052205460a01b90565b6040516001600160a01b031990911681526020016100e5565b6101dd83610438565b6001600160a01b03929092166000908152602081815260408083209383529290522080546001600160601b03191660a09290921c919091179055565b61022a826315b7d92160e21b6104a4565b6001600160a01b0382811660008181526002602052604080822080546001600160a01b0319169486169485179055517f8b02f29079c5db681ff18c5aa68c088f932a30c901f5efb857ba16f958cea5e09190a35050565b336000610291620f4240846107f8565b6001600160a01b03831660009081526001602090815260408083208484529091528120549192509060ff16156102f657506001600160a01b03821660009081526020818152604080832086845290915290205460a01b6001600160a01b031916610303565b6103008385610571565b90505b60008190036103535760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b60448201526064015b60405180910390fd5b60405161078f60e21b815260048101859052602481018290526001600160a01b03841690611e3c90604401600060405180830381600087803b15801561039857600080fd5b505af11580156103ac573d6000803e3d6000fd5b5050505050505050565b6103c08282610642565b6001600160a01b0382166000818152600160209081526040808320858452825291829020805460ff19811660ff91821615908117909255835194855291840185905216151582820152517fcff1f4ec3e5344bcec0d8aeafb939f623ee7b2f4bb64ffc9abbb6dc2d3a65d719181900360600190a15050565b6001600160a01b038181166000908152600260205260409020541633146104a15760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79204861736820536565642053657474657220436f6e74726163740000604482015260640161034a565b50565b60405163230448b160e01b81523360048201523060248201526001600160e01b0319821660448201526001600160a01b0383169063230448b1906064016020604051808303816000875af1158015610500573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610524919061081a565b61056d5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161034a565b5050565b6040516001600160601b0319606084901b166020820152603481018290526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358fb597c90605401604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016105fa91815260200190565b602060405180830381865afa158015610617573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063b919061083c565b9392505050565b60405163a47d29cb60e01b8152600481018290526001600160a01b0383169063a47d29cb90602401602060405180830381865afa158015610687573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ab9190610855565b6001600160a01b0316336001600160a01b03161461056d5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161034a565b6001600160a01b03811681146104a157600080fd5b60008060006060848603121561072357600080fd5b833561072e816106f9565b92506020840135915060408401356001600160a01b03198116811461075257600080fd5b809150509250925092565b6000806040838503121561077057600080fd5b823561077b816106f9565b9150602083013561078b816106f9565b809150509250929050565b6000602082840312156107a857600080fd5b813561063b816106f9565b6000602082840312156107c557600080fd5b5035919050565b600080604083850312156107df57600080fd5b82356107ea816106f9565b946020939093013593505050565b60008261081557634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561082c57600080fd5b8151801515811461063b57600080fd5b60006020828403121561084e57600080fd5b5051919050565b60006020828403121561086757600080fd5b815161063b816106f956fea26469706673582212208ca8ecf64c6c7f4dd89d92fae596ed2db44f00df3419e920aae6d589a596db0d64736f6c63430008130033",
243
+ "bytecode": "0x60a060405234801561001057600080fd5b5060405161089938038061089983398101604081905261002f9161006d565b6001600160a01b03811660808190526040517f2ad63d43bf15d4fb27447dac9430a7e357192317067d6a79f145ae0893867d2890600090a25061009d565b60006020828403121561007f57600080fd5b81516001600160a01b038116811461009657600080fd5b9392505050565b6080516107da6100bf60003960008181610146015261054f01526107da6000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c80638f2a62c31461007d5780639f8ac23f146100cb578063a6db8cb614610119578063b1aea8c91461012e578063b310c79214610141578063b628171a14610168578063dddceed11461017b578063eaedc4231461018e575b600080fd5b6100b661008b366004610681565b6001600160a01b03919091166000908152600160209081526040808320938352929052205460ff1690565b60405190151581526020015b60405180910390f35b6101016100d9366004610681565b6001600160a01b03918216600090815260026020908152604080832093835292905220541690565b6040516001600160a01b0390911681526020016100c2565b61012c610127366004610681565b6101de565b005b61012c61013c3660046106ad565b610260565b6101017f000000000000000000000000000000000000000000000000000000000000000081565b61012c6101763660046106ef565b6102cf565b61012c610189366004610708565b610400565b6101c561019c366004610681565b6001600160a01b0391909116600090815260208181526040808320938352929052205460a01b90565b6040516001600160a01b031990911681526020016100c2565b6101e88282610454565b6001600160a01b0382166000818152600160209081526040808320858452825291829020805460ff19811660ff91821615908117909255835194855291840185905216151582820152517f459a9692be7991c0a9003b1503f8bae163cd2c99f35c952bf5b7b8d47629f6069181900360600190a15050565b61026a8383610454565b6001600160a01b03838116600081815260026020908152604080832087845290915280822080546001600160a01b0319169486169485179055518592917f3a32d746deba4ebe76a81771454e46f19940f56a24b0594a42356bcea6ac841491a4505050565b3360006102db8361050f565b6001600160a01b03831660009081526001602090815260408083208484529091528120549192509060ff161561034057506001600160a01b03821660009081526020818152604080832086845290915290205460a01b6001600160a01b03191661034d565b61034a8385610524565b90505b600081900361039d5760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b60448201526064015b60405180910390fd5b60405161078f60e21b815260048101859052602481018290526001600160a01b03841690611e3c90604401600060405180830381600087803b1580156103e257600080fd5b505af11580156103f6573d6000803e3d6000fd5b5050505050505050565b600061040b8361050f565b905061041784826105f5565b506001600160a01b03929092166000908152602081815260408083209383529290522080546001600160601b03191660a09290921c919091179055565b60405163a47d29cb60e01b8152600481018290526001600160a01b0383169063a47d29cb90602401602060405180830381865afa158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd919061074c565b6001600160a01b0316336001600160a01b03161461050b5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b6044820152606401610394565b5050565b600061051e620f424083610769565b92915050565b6040516001600160601b0319606084901b166020820152603481018290526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358fb597c90605401604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016105ad91815260200190565b602060405180830381865afa1580156105ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ee919061078b565b9392505050565b6001600160a01b03828116600090815260026020908152604080832085845290915290205416331461050b5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79204861736820536565642053657474657220436f6e747261637400006044820152606401610394565b6001600160a01b038116811461067e57600080fd5b50565b6000806040838503121561069457600080fd5b823561069f81610669565b946020939093013593505050565b6000806000606084860312156106c257600080fd5b83356106cd81610669565b92506020840135915060408401356106e481610669565b809150509250925092565b60006020828403121561070157600080fd5b5035919050565b60008060006060848603121561071d57600080fd5b833561072881610669565b92506020840135915060408401356001600160a01b0319811681146106e457600080fd5b60006020828403121561075e57600080fd5b81516105ee81610669565b60008261078657634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561079d57600080fd5b505191905056fea2646970667358221220d28ee7436353b75f468a405db3e0bc82b814d1ad37792781337ab1850e01612164736f6c63430008130033",
244
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100785760003560e01c80638f2a62c31461007d5780639f8ac23f146100cb578063a6db8cb614610119578063b1aea8c91461012e578063b310c79214610141578063b628171a14610168578063dddceed11461017b578063eaedc4231461018e575b600080fd5b6100b661008b366004610681565b6001600160a01b03919091166000908152600160209081526040808320938352929052205460ff1690565b60405190151581526020015b60405180910390f35b6101016100d9366004610681565b6001600160a01b03918216600090815260026020908152604080832093835292905220541690565b6040516001600160a01b0390911681526020016100c2565b61012c610127366004610681565b6101de565b005b61012c61013c3660046106ad565b610260565b6101017f000000000000000000000000000000000000000000000000000000000000000081565b61012c6101763660046106ef565b6102cf565b61012c610189366004610708565b610400565b6101c561019c366004610681565b6001600160a01b0391909116600090815260208181526040808320938352929052205460a01b90565b6040516001600160a01b031990911681526020016100c2565b6101e88282610454565b6001600160a01b0382166000818152600160209081526040808320858452825291829020805460ff19811660ff91821615908117909255835194855291840185905216151582820152517f459a9692be7991c0a9003b1503f8bae163cd2c99f35c952bf5b7b8d47629f6069181900360600190a15050565b61026a8383610454565b6001600160a01b03838116600081815260026020908152604080832087845290915280822080546001600160a01b0319169486169485179055518592917f3a32d746deba4ebe76a81771454e46f19940f56a24b0594a42356bcea6ac841491a4505050565b3360006102db8361050f565b6001600160a01b03831660009081526001602090815260408083208484529091528120549192509060ff161561034057506001600160a01b03821660009081526020818152604080832086845290915290205460a01b6001600160a01b03191661034d565b61034a8385610524565b90505b600081900361039d5760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b60448201526064015b60405180910390fd5b60405161078f60e21b815260048101859052602481018290526001600160a01b03841690611e3c90604401600060405180830381600087803b1580156103e257600080fd5b505af11580156103f6573d6000803e3d6000fd5b5050505050505050565b600061040b8361050f565b905061041784826105f5565b506001600160a01b03929092166000908152602081815260408083209383529290522080546001600160601b03191660a09290921c919091179055565b60405163a47d29cb60e01b8152600481018290526001600160a01b0383169063a47d29cb90602401602060405180830381865afa158015610499573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bd919061074c565b6001600160a01b0316336001600160a01b03161461050b5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b6044820152606401610394565b5050565b600061051e620f424083610769565b92915050565b6040516001600160601b0319606084901b166020820152603481018290526000906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906358fb597c90605401604051602081830303815290604052805190602001206040518263ffffffff1660e01b81526004016105ad91815260200190565b602060405180830381865afa1580156105ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ee919061078b565b9392505050565b6001600160a01b03828116600090815260026020908152604080832085845290915290205416331461050b5760405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79204861736820536565642053657474657220436f6e747261637400006044820152606401610394565b6001600160a01b038116811461067e57600080fd5b50565b6000806040838503121561069457600080fd5b823561069f81610669565b946020939093013593505050565b6000806000606084860312156106c257600080fd5b83356106cd81610669565b92506020840135915060408401356106e481610669565b809150509250925092565b60006020828403121561070157600080fd5b5035919050565b60008060006060848603121561071d57600080fd5b833561072881610669565b92506020840135915060408401356001600160a01b0319811681146106e457600080fd5b60006020828403121561075e57600080fd5b81516105ee81610669565b60008261078657634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561079d57600080fd5b505191905056fea2646970667358221220d28ee7436353b75f468a405db3e0bc82b814d1ad37792781337ab1850e01612164736f6c63430008130033",
229
245
  "linkReferences": {},
230
246
  "deployedLinkReferences": {}
231
247
  }
@@ -201,8 +201,8 @@
201
201
  "type": "function"
202
202
  }
203
203
  ],
204
- "bytecode": "0x608060405234801561001057600080fd5b50610ae1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c806301736bdd1461007d57806301ffc9a7146100c3578063226d4d4a146100e657806348125993146100fc578063865e2bb5146101115780638e9bf99c146101555780639ca7dc7a14610168578063dd4938cd14610189575b600080fd5b6100a661008b366004610861565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d66100d1366004610885565b61019c565b60405190151581526020016100ba565b6100ee60fa81565b6040519081526020016100ba565b61010f61010a3660046108af565b6101d3565b005b61013e61011f366004610861565b6001602081905260009182526040909120805491015460ff9091169082565b6040805192151583526020830191909152016100ba565b61010f610163366004610861565b61036e565b61017b6101763660046108af565b610489565b6040516100ba9291906108db565b61010f61019736600461095f565b61074f565b60006001600160e01b03198216634e53ee3d60e11b14806101cd57506301ffc9a760e01b6001600160e01b03198316145b92915050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561021757600080fd5b505afa15801561022b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024f9190610998565b6001600160a01b03161461027e5760405162461bcd60e51b8152600401610275906109b5565b60405180910390fd5b60fa8211156102f55760405162461bcd60e51b815260206004820152603f60248201527f6f766572726964652062707320666f7220636f6e7472616374206d757374206260448201527f65206c657373207468616e206f7220657175616c20746f2064656661756c74006064820152608401610275565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b257600080fd5b505afa1580156103c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ea9190610998565b6001600160a01b0316146104105760405162461bcd60e51b8152600401610275906109b5565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a35050565b60408051600380825260808201909252606091829190602082018380368337505060408051600380825260808201909252929450905060208201606080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161050391815260200190565b60806040518083038186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105539190610a01565b9350935093509350838660008151811061056f5761056f610a49565b6001600160a01b039092166020928302919091019091015280610593836064610a75565b61059d9190610a8c565b856000815181106105b0576105b0610a49565b60200260200101818152505082866001815181106105d0576105d0610a49565b6001600160a01b03909216602092830291909101909101526105f28183610a8c565b8560018151811061060557610605610a49565b6020908102919091018101919091526001600160a01b038981166000908152918290526040909120541661069b5760405162461bcd60e51b815260206004820152603760248201527f41727420426c6f636b7320726f79616c74792061646472657373206d757374206044820152761899481919599a5b995908199bdc8818dbdb9d1c9858dd604a1b6064820152608401610275565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106cd576106cd610a49565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff166107075760fa610725565b6001600160a01b038816600090815260016020819052604090912001545b8560028151811061073857610738610a49565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561079357600080fd5b505afa1580156107a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cb9190610998565b6001600160a01b0316146107f15760405162461bcd60e51b8152600401610275906109b5565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f7cb321285c1ec4f1d1b443dc12381a37bf49e9edabe5ab5c35d1ebfb16dca3f69190a3505050565b6001600160a01b038116811461085e57600080fd5b50565b60006020828403121561087357600080fd5b813561087e81610849565b9392505050565b60006020828403121561089757600080fd5b81356001600160e01b03198116811461087e57600080fd5b600080604083850312156108c257600080fd5b82356108cd81610849565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b8281101561091d5781516001600160a01b0316845292840192908401906001016108f8565b5050508381038285015284518082528583019183019060005b8181101561095257835183529284019291840191600101610936565b5090979650505050505050565b6000806040838503121561097257600080fd5b823561097d81610849565b9150602083013561098d81610849565b809150509250929050565b6000602082840312156109aa57600080fd5b815161087e81610849565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b60008060008060808587031215610a1757600080fd5b8451610a2281610849565b6020860151909450610a3381610849565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610a8757610a87610a5f565b500390565b6000816000190483118215151615610aa657610aa6610a5f565b50029056fea26469706673582212201ba7afcd7e7e58c49b23b6caea7564785d1f366a62871ddb4eeeb9f919ba633664736f6c63430008090033",
205
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100785760003560e01c806301736bdd1461007d57806301ffc9a7146100c3578063226d4d4a146100e657806348125993146100fc578063865e2bb5146101115780638e9bf99c146101555780639ca7dc7a14610168578063dd4938cd14610189575b600080fd5b6100a661008b366004610861565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d66100d1366004610885565b61019c565b60405190151581526020016100ba565b6100ee60fa81565b6040519081526020016100ba565b61010f61010a3660046108af565b6101d3565b005b61013e61011f366004610861565b6001602081905260009182526040909120805491015460ff9091169082565b6040805192151583526020830191909152016100ba565b61010f610163366004610861565b61036e565b61017b6101763660046108af565b610489565b6040516100ba9291906108db565b61010f61019736600461095f565b61074f565b60006001600160e01b03198216634e53ee3d60e11b14806101cd57506301ffc9a760e01b6001600160e01b03198316145b92915050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561021757600080fd5b505afa15801561022b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024f9190610998565b6001600160a01b03161461027e5760405162461bcd60e51b8152600401610275906109b5565b60405180910390fd5b60fa8211156102f55760405162461bcd60e51b815260206004820152603f60248201527f6f766572726964652062707320666f7220636f6e7472616374206d757374206260448201527f65206c657373207468616e206f7220657175616c20746f2064656661756c74006064820152608401610275565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b257600080fd5b505afa1580156103c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ea9190610998565b6001600160a01b0316146104105760405162461bcd60e51b8152600401610275906109b5565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a35050565b60408051600380825260808201909252606091829190602082018380368337505060408051600380825260808201909252929450905060208201606080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161050391815260200190565b60806040518083038186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105539190610a01565b9350935093509350838660008151811061056f5761056f610a49565b6001600160a01b039092166020928302919091019091015280610593836064610a75565b61059d9190610a8c565b856000815181106105b0576105b0610a49565b60200260200101818152505082866001815181106105d0576105d0610a49565b6001600160a01b03909216602092830291909101909101526105f28183610a8c565b8560018151811061060557610605610a49565b6020908102919091018101919091526001600160a01b038981166000908152918290526040909120541661069b5760405162461bcd60e51b815260206004820152603760248201527f41727420426c6f636b7320726f79616c74792061646472657373206d757374206044820152761899481919599a5b995908199bdc8818dbdb9d1c9858dd604a1b6064820152608401610275565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106cd576106cd610a49565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff166107075760fa610725565b6001600160a01b038816600090815260016020819052604090912001545b8560028151811061073857610738610a49565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561079357600080fd5b505afa1580156107a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cb9190610998565b6001600160a01b0316146107f15760405162461bcd60e51b8152600401610275906109b5565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f7cb321285c1ec4f1d1b443dc12381a37bf49e9edabe5ab5c35d1ebfb16dca3f69190a3505050565b6001600160a01b038116811461085e57600080fd5b50565b60006020828403121561087357600080fd5b813561087e81610849565b9392505050565b60006020828403121561089757600080fd5b81356001600160e01b03198116811461087e57600080fd5b600080604083850312156108c257600080fd5b82356108cd81610849565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b8281101561091d5781516001600160a01b0316845292840192908401906001016108f8565b5050508381038285015284518082528583019183019060005b8181101561095257835183529284019291840191600101610936565b5090979650505050505050565b6000806040838503121561097257600080fd5b823561097d81610849565b9150602083013561098d81610849565b809150509250929050565b6000602082840312156109aa57600080fd5b815161087e81610849565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b60008060008060808587031215610a1757600080fd5b8451610a2281610849565b6020860151909450610a3381610849565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610a8757610a87610a5f565b500390565b6000816000190483118215151615610aa657610aa6610a5f565b50029056fea26469706673582212201ba7afcd7e7e58c49b23b6caea7564785d1f366a62871ddb4eeeb9f919ba633664736f6c63430008090033",
204
+ "bytecode": "0x608060405234801561001057600080fd5b50610ae1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c806301736bdd1461007d57806301ffc9a7146100c3578063226d4d4a146100e657806348125993146100fc578063865e2bb5146101115780638e9bf99c146101555780639ca7dc7a14610168578063dd4938cd14610189575b600080fd5b6100a661008b366004610861565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d66100d1366004610885565b61019c565b60405190151581526020016100ba565b6100ee60fa81565b6040519081526020016100ba565b61010f61010a3660046108af565b6101d3565b005b61013e61011f366004610861565b6001602081905260009182526040909120805491015460ff9091169082565b6040805192151583526020830191909152016100ba565b61010f610163366004610861565b61036e565b61017b6101763660046108af565b610489565b6040516100ba9291906108db565b61010f61019736600461095f565b61074f565b60006001600160e01b03198216634e53ee3d60e11b14806101cd57506301ffc9a760e01b6001600160e01b03198316145b92915050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561021757600080fd5b505afa15801561022b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024f9190610998565b6001600160a01b03161461027e5760405162461bcd60e51b8152600401610275906109b5565b60405180910390fd5b60fa8211156102f55760405162461bcd60e51b815260206004820152603f60248201527f6f766572726964652062707320666f7220636f6e7472616374206d757374206260448201527f65206c657373207468616e206f7220657175616c20746f2064656661756c74006064820152608401610275565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b257600080fd5b505afa1580156103c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ea9190610998565b6001600160a01b0316146104105760405162461bcd60e51b8152600401610275906109b5565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a35050565b60408051600380825260808201909252606091829190602082018380368337505060408051600380825260808201909252929450905060208201606080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161050391815260200190565b60806040518083038186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105539190610a01565b9350935093509350838660008151811061056f5761056f610a49565b6001600160a01b039092166020928302919091019091015280610593836064610a75565b61059d9190610a8c565b856000815181106105b0576105b0610a49565b60200260200101818152505082866001815181106105d0576105d0610a49565b6001600160a01b03909216602092830291909101909101526105f28183610a8c565b8560018151811061060557610605610a49565b6020908102919091018101919091526001600160a01b038981166000908152918290526040909120541661069b5760405162461bcd60e51b815260206004820152603760248201527f41727420426c6f636b7320726f79616c74792061646472657373206d757374206044820152761899481919599a5b995908199bdc8818dbdb9d1c9858dd604a1b6064820152608401610275565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106cd576106cd610a49565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff166107075760fa610725565b6001600160a01b038816600090815260016020819052604090912001545b8560028151811061073857610738610a49565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561079357600080fd5b505afa1580156107a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cb9190610998565b6001600160a01b0316146107f15760405162461bcd60e51b8152600401610275906109b5565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f7cb321285c1ec4f1d1b443dc12381a37bf49e9edabe5ab5c35d1ebfb16dca3f69190a3505050565b6001600160a01b038116811461085e57600080fd5b50565b60006020828403121561087357600080fd5b813561087e81610849565b9392505050565b60006020828403121561089757600080fd5b81356001600160e01b03198116811461087e57600080fd5b600080604083850312156108c257600080fd5b82356108cd81610849565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b8281101561091d5781516001600160a01b0316845292840192908401906001016108f8565b5050508381038285015284518082528583019183019060005b8181101561095257835183529284019291840191600101610936565b5090979650505050505050565b6000806040838503121561097257600080fd5b823561097d81610849565b9150602083013561098d81610849565b809150509250929050565b6000602082840312156109aa57600080fd5b815161087e81610849565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b60008060008060808587031215610a1757600080fd5b8451610a2281610849565b6020860151909450610a3381610849565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610a8757610a87610a5f565b500390565b6000816000190483118215151615610aa657610aa6610a5f565b50029056fea264697066735822122093e470ac48b7ca11493bd39be34e365dac99169694cbf7a6938c2eb3e670a64d64736f6c63430008090033",
205
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100785760003560e01c806301736bdd1461007d57806301ffc9a7146100c3578063226d4d4a146100e657806348125993146100fc578063865e2bb5146101115780638e9bf99c146101555780639ca7dc7a14610168578063dd4938cd14610189575b600080fd5b6100a661008b366004610861565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d66100d1366004610885565b61019c565b60405190151581526020016100ba565b6100ee60fa81565b6040519081526020016100ba565b61010f61010a3660046108af565b6101d3565b005b61013e61011f366004610861565b6001602081905260009182526040909120805491015460ff9091169082565b6040805192151583526020830191909152016100ba565b61010f610163366004610861565b61036e565b61017b6101763660046108af565b610489565b6040516100ba9291906108db565b61010f61019736600461095f565b61074f565b60006001600160e01b03198216634e53ee3d60e11b14806101cd57506301ffc9a760e01b6001600160e01b03198316145b92915050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561021757600080fd5b505afa15801561022b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024f9190610998565b6001600160a01b03161461027e5760405162461bcd60e51b8152600401610275906109b5565b60405180910390fd5b60fa8211156102f55760405162461bcd60e51b815260206004820152603f60248201527f6f766572726964652062707320666f7220636f6e7472616374206d757374206260448201527f65206c657373207468616e206f7220657175616c20746f2064656661756c74006064820152608401610275565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b257600080fd5b505afa1580156103c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ea9190610998565b6001600160a01b0316146104105760405162461bcd60e51b8152600401610275906109b5565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a35050565b60408051600380825260808201909252606091829190602082018380368337505060408051600380825260808201909252929450905060208201606080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161050391815260200190565b60806040518083038186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105539190610a01565b9350935093509350838660008151811061056f5761056f610a49565b6001600160a01b039092166020928302919091019091015280610593836064610a75565b61059d9190610a8c565b856000815181106105b0576105b0610a49565b60200260200101818152505082866001815181106105d0576105d0610a49565b6001600160a01b03909216602092830291909101909101526105f28183610a8c565b8560018151811061060557610605610a49565b6020908102919091018101919091526001600160a01b038981166000908152918290526040909120541661069b5760405162461bcd60e51b815260206004820152603760248201527f41727420426c6f636b7320726f79616c74792061646472657373206d757374206044820152761899481919599a5b995908199bdc8818dbdb9d1c9858dd604a1b6064820152608401610275565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106cd576106cd610a49565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff166107075760fa610725565b6001600160a01b038816600090815260016020819052604090912001545b8560028151811061073857610738610a49565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561079357600080fd5b505afa1580156107a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cb9190610998565b6001600160a01b0316146107f15760405162461bcd60e51b8152600401610275906109b5565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f7cb321285c1ec4f1d1b443dc12381a37bf49e9edabe5ab5c35d1ebfb16dca3f69190a3505050565b6001600160a01b038116811461085e57600080fd5b50565b60006020828403121561087357600080fd5b813561087e81610849565b9392505050565b60006020828403121561089757600080fd5b81356001600160e01b03198116811461087e57600080fd5b600080604083850312156108c257600080fd5b82356108cd81610849565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b8281101561091d5781516001600160a01b0316845292840192908401906001016108f8565b5050508381038285015284518082528583019183019060005b8181101561095257835183529284019291840191600101610936565b5090979650505050505050565b6000806040838503121561097257600080fd5b823561097d81610849565b9150602083013561098d81610849565b809150509250929050565b6000602082840312156109aa57600080fd5b815161087e81610849565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b60008060008060808587031215610a1757600080fd5b8451610a2281610849565b6020860151909450610a3381610849565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610a8757610a87610a5f565b500390565b6000816000190483118215151615610aa657610aa6610a5f565b50029056fea264697066735822122093e470ac48b7ca11493bd39be34e365dac99169694cbf7a6938c2eb3e670a64d64736f6c63430008090033",
206
206
  "linkReferences": {},
207
207
  "deployedLinkReferences": {}
208
208
  }
@@ -294,8 +294,8 @@
294
294
  "type": "function"
295
295
  }
296
296
  ],
297
- "bytecode": "0x608060405234801561001057600080fd5b50610e75806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c806301ffc9a7146100a95780631ba1e650146100d15780631d1e569c146100e75780633dfba7ab146100fc5780634d196fab1461010f57806397df3644146101535780639ca7dc7a146101805780639e0d31c2146101a1578063cf9a973c146101b4578063d020306d146100d1578063e6e97118146101c7578063e99f58da146101da575b600080fd5b6100bc6100b7366004610bb8565b61021b565b60405190151581526020015b60405180910390f35b6100d960fa81565b6040519081526020016100c8565b6100fa6100f5366004610c01565b610252565b005b6100fa61010a366004610c1e565b610377565b61013c61011d366004610c01565b6002602052600090815260409020805460019091015460ff9091169082565b6040805192151583526020830191909152016100c8565b61013c610161366004610c01565b6001602081905260009182526040909120805491015460ff9091169082565b61019361018e366004610c1e565b6104b5565b6040516100c8929190610c4a565b6100fa6101af366004610cce565b610874565b6100fa6101c2366004610c01565b61096e565b6100fa6101d5366004610c1e565b610a82565b6102036101e8366004610c01565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016100c8565b60006001600160e01b03198216634e53ee3d60e11b148061024c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561029657600080fd5b505afa1580156102aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ce9190610d07565b6001600160a01b0316146102fd5760405162461bcd60e51b81526004016102f490610d24565b60405180910390fd5b604080518082018252600080825260208083018281526001600160a01b038716808452600283528584209451855460ff19169015151785559051600190940193909355925181815290927f236d38a8cdac19567ba384c1ea9833c930d1472ea05aa08c93d95e2224f7559391015b60405180910390a35050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103bb57600080fd5b505afa1580156103cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f39190610d07565b6001600160a01b0316146104195760405162461bcd60e51b81526004016102f490610d24565b61271082111561043b5760405162461bcd60e51b81526004016102f490610d70565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f45a926fd99cb5c25b970de6015f5a179dbe5402af5f392232db13f2d40086b8491015b60405180910390a3505050565b60408051600480825260a0820190925260609182919060208201608080368337505060408051600480825260a08201909252929450905060208201608080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161053091815260200190565b60806040518083038186803b15801561054857600080fd5b505afa15801561055c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105809190610d95565b9350935093509350838660008151811061059c5761059c610ddd565b6001600160a01b0390921660209283029190910190910152806105c0836064610e09565b6105ca9190610e20565b856000815181106105dd576105dd610ddd565b60200260200101818152505082866001815181106105fd576105fd610ddd565b6001600160a01b039092166020928302919091019091015261061f8183610e20565b8560018151811061063257610632610ddd565b6020908102919091018101919091526001600160a01b03898116600090815291829052604090912054166106c65760405162461bcd60e51b815260206004820152603560248201527f506c6174666f726d20726f79616c74792061646472657373206d757374206265604482015274081919599a5b995908199bdc8818dbdb9d1c9858dd605a1b60648201526084016102f4565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106f8576106f8610ddd565b6001600160a01b0392831660209182029290920181019190915290891660009081526002909152604090205460ff166107325760fa61074f565b6001600160a01b0388166000908152600260205260409020600101545b8560028151811061076257610762610ddd565b602002602001018181525050876001600160a01b031663cfbf4d976040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a757600080fd5b505afa1580156107bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107df9190610d07565b866003815181106107f2576107f2610ddd565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff1661082c5760fa61084a565b6001600160a01b038816600090815260016020819052604090912001545b8560038151811061085d5761085d610ddd565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156108b857600080fd5b505afa1580156108cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f09190610d07565b6001600160a01b0316146109165760405162461bcd60e51b81526004016102f490610d24565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f585dff5ad62b9dc71ff704d3475179461e1846ee542f2e6f940fb3b1f41b24e99190a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156109b257600080fd5b505afa1580156109c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ea9190610d07565b6001600160a01b031614610a105760405162461bcd60e51b81526004016102f490610d24565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f45a926fd99cb5c25b970de6015f5a179dbe5402af5f392232db13f2d40086b84910161036b565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b158015610ac657600080fd5b505afa158015610ada573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610afe9190610d07565b6001600160a01b031614610b245760405162461bcd60e51b81526004016102f490610d24565b612710821115610b465760405162461bcd60e51b81526004016102f490610d70565b604080518082018252600180825260208083018681526001600160a01b0388166000818152600284528690209451855460ff1916901515178555905193830193909355925185815290927f236d38a8cdac19567ba384c1ea9833c930d1472ea05aa08c93d95e2224f7559391016104a8565b600060208284031215610bca57600080fd5b81356001600160e01b031981168114610be257600080fd5b9392505050565b6001600160a01b0381168114610bfe57600080fd5b50565b600060208284031215610c1357600080fd5b8135610be281610be9565b60008060408385031215610c3157600080fd5b8235610c3c81610be9565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b82811015610c8c5781516001600160a01b031684529284019290840190600101610c67565b5050508381038285015284518082528583019183019060005b81811015610cc157835183529284019291840191600101610ca5565b5090979650505050505050565b60008060408385031215610ce157600080fd5b8235610cec81610be9565b91506020830135610cfc81610be9565b809150509250929050565b600060208284031215610d1957600080fd5b8151610be281610be9565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b6020808252600b908201526a696e76616c69642062707360a81b604082015260600190565b60008060008060808587031215610dab57600080fd5b8451610db681610be9565b6020860151909450610dc781610be9565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610e1b57610e1b610df3565b500390565b6000816000190483118215151615610e3a57610e3a610df3565b50029056fea26469706673582212203a69bec031dceac35040020792b5016e4ff3e2e5a452c6bd4f842f240c9562f864736f6c63430008090033",
298
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c806301ffc9a7146100a95780631ba1e650146100d15780631d1e569c146100e75780633dfba7ab146100fc5780634d196fab1461010f57806397df3644146101535780639ca7dc7a146101805780639e0d31c2146101a1578063cf9a973c146101b4578063d020306d146100d1578063e6e97118146101c7578063e99f58da146101da575b600080fd5b6100bc6100b7366004610bb8565b61021b565b60405190151581526020015b60405180910390f35b6100d960fa81565b6040519081526020016100c8565b6100fa6100f5366004610c01565b610252565b005b6100fa61010a366004610c1e565b610377565b61013c61011d366004610c01565b6002602052600090815260409020805460019091015460ff9091169082565b6040805192151583526020830191909152016100c8565b61013c610161366004610c01565b6001602081905260009182526040909120805491015460ff9091169082565b61019361018e366004610c1e565b6104b5565b6040516100c8929190610c4a565b6100fa6101af366004610cce565b610874565b6100fa6101c2366004610c01565b61096e565b6100fa6101d5366004610c1e565b610a82565b6102036101e8366004610c01565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016100c8565b60006001600160e01b03198216634e53ee3d60e11b148061024c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561029657600080fd5b505afa1580156102aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ce9190610d07565b6001600160a01b0316146102fd5760405162461bcd60e51b81526004016102f490610d24565b60405180910390fd5b604080518082018252600080825260208083018281526001600160a01b038716808452600283528584209451855460ff19169015151785559051600190940193909355925181815290927f236d38a8cdac19567ba384c1ea9833c930d1472ea05aa08c93d95e2224f7559391015b60405180910390a35050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103bb57600080fd5b505afa1580156103cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f39190610d07565b6001600160a01b0316146104195760405162461bcd60e51b81526004016102f490610d24565b61271082111561043b5760405162461bcd60e51b81526004016102f490610d70565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f45a926fd99cb5c25b970de6015f5a179dbe5402af5f392232db13f2d40086b8491015b60405180910390a3505050565b60408051600480825260a0820190925260609182919060208201608080368337505060408051600480825260a08201909252929450905060208201608080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161053091815260200190565b60806040518083038186803b15801561054857600080fd5b505afa15801561055c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105809190610d95565b9350935093509350838660008151811061059c5761059c610ddd565b6001600160a01b0390921660209283029190910190910152806105c0836064610e09565b6105ca9190610e20565b856000815181106105dd576105dd610ddd565b60200260200101818152505082866001815181106105fd576105fd610ddd565b6001600160a01b039092166020928302919091019091015261061f8183610e20565b8560018151811061063257610632610ddd565b6020908102919091018101919091526001600160a01b03898116600090815291829052604090912054166106c65760405162461bcd60e51b815260206004820152603560248201527f506c6174666f726d20726f79616c74792061646472657373206d757374206265604482015274081919599a5b995908199bdc8818dbdb9d1c9858dd605a1b60648201526084016102f4565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106f8576106f8610ddd565b6001600160a01b0392831660209182029290920181019190915290891660009081526002909152604090205460ff166107325760fa61074f565b6001600160a01b0388166000908152600260205260409020600101545b8560028151811061076257610762610ddd565b602002602001018181525050876001600160a01b031663cfbf4d976040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a757600080fd5b505afa1580156107bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107df9190610d07565b866003815181106107f2576107f2610ddd565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff1661082c5760fa61084a565b6001600160a01b038816600090815260016020819052604090912001545b8560038151811061085d5761085d610ddd565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156108b857600080fd5b505afa1580156108cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f09190610d07565b6001600160a01b0316146109165760405162461bcd60e51b81526004016102f490610d24565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f585dff5ad62b9dc71ff704d3475179461e1846ee542f2e6f940fb3b1f41b24e99190a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156109b257600080fd5b505afa1580156109c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ea9190610d07565b6001600160a01b031614610a105760405162461bcd60e51b81526004016102f490610d24565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f45a926fd99cb5c25b970de6015f5a179dbe5402af5f392232db13f2d40086b84910161036b565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b158015610ac657600080fd5b505afa158015610ada573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610afe9190610d07565b6001600160a01b031614610b245760405162461bcd60e51b81526004016102f490610d24565b612710821115610b465760405162461bcd60e51b81526004016102f490610d70565b604080518082018252600180825260208083018681526001600160a01b0388166000818152600284528690209451855460ff1916901515178555905193830193909355925185815290927f236d38a8cdac19567ba384c1ea9833c930d1472ea05aa08c93d95e2224f7559391016104a8565b600060208284031215610bca57600080fd5b81356001600160e01b031981168114610be257600080fd5b9392505050565b6001600160a01b0381168114610bfe57600080fd5b50565b600060208284031215610c1357600080fd5b8135610be281610be9565b60008060408385031215610c3157600080fd5b8235610c3c81610be9565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b82811015610c8c5781516001600160a01b031684529284019290840190600101610c67565b5050508381038285015284518082528583019183019060005b81811015610cc157835183529284019291840191600101610ca5565b5090979650505050505050565b60008060408385031215610ce157600080fd5b8235610cec81610be9565b91506020830135610cfc81610be9565b809150509250929050565b600060208284031215610d1957600080fd5b8151610be281610be9565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b6020808252600b908201526a696e76616c69642062707360a81b604082015260600190565b60008060008060808587031215610dab57600080fd5b8451610db681610be9565b6020860151909450610dc781610be9565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610e1b57610e1b610df3565b500390565b6000816000190483118215151615610e3a57610e3a610df3565b50029056fea26469706673582212203a69bec031dceac35040020792b5016e4ff3e2e5a452c6bd4f842f240c9562f864736f6c63430008090033",
297
+ "bytecode": "0x608060405234801561001057600080fd5b50610e75806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c806301ffc9a7146100a95780631ba1e650146100d15780631d1e569c146100e75780633dfba7ab146100fc5780634d196fab1461010f57806397df3644146101535780639ca7dc7a146101805780639e0d31c2146101a1578063cf9a973c146101b4578063d020306d146100d1578063e6e97118146101c7578063e99f58da146101da575b600080fd5b6100bc6100b7366004610bb8565b61021b565b60405190151581526020015b60405180910390f35b6100d960fa81565b6040519081526020016100c8565b6100fa6100f5366004610c01565b610252565b005b6100fa61010a366004610c1e565b610377565b61013c61011d366004610c01565b6002602052600090815260409020805460019091015460ff9091169082565b6040805192151583526020830191909152016100c8565b61013c610161366004610c01565b6001602081905260009182526040909120805491015460ff9091169082565b61019361018e366004610c1e565b6104b5565b6040516100c8929190610c4a565b6100fa6101af366004610cce565b610874565b6100fa6101c2366004610c01565b61096e565b6100fa6101d5366004610c1e565b610a82565b6102036101e8366004610c01565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016100c8565b60006001600160e01b03198216634e53ee3d60e11b148061024c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561029657600080fd5b505afa1580156102aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ce9190610d07565b6001600160a01b0316146102fd5760405162461bcd60e51b81526004016102f490610d24565b60405180910390fd5b604080518082018252600080825260208083018281526001600160a01b038716808452600283528584209451855460ff19169015151785559051600190940193909355925181815290927f236d38a8cdac19567ba384c1ea9833c930d1472ea05aa08c93d95e2224f7559391015b60405180910390a35050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103bb57600080fd5b505afa1580156103cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f39190610d07565b6001600160a01b0316146104195760405162461bcd60e51b81526004016102f490610d24565b61271082111561043b5760405162461bcd60e51b81526004016102f490610d70565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f45a926fd99cb5c25b970de6015f5a179dbe5402af5f392232db13f2d40086b8491015b60405180910390a3505050565b60408051600480825260a0820190925260609182919060208201608080368337505060408051600480825260a08201909252929450905060208201608080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161053091815260200190565b60806040518083038186803b15801561054857600080fd5b505afa15801561055c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105809190610d95565b9350935093509350838660008151811061059c5761059c610ddd565b6001600160a01b0390921660209283029190910190910152806105c0836064610e09565b6105ca9190610e20565b856000815181106105dd576105dd610ddd565b60200260200101818152505082866001815181106105fd576105fd610ddd565b6001600160a01b039092166020928302919091019091015261061f8183610e20565b8560018151811061063257610632610ddd565b6020908102919091018101919091526001600160a01b03898116600090815291829052604090912054166106c65760405162461bcd60e51b815260206004820152603560248201527f506c6174666f726d20726f79616c74792061646472657373206d757374206265604482015274081919599a5b995908199bdc8818dbdb9d1c9858dd605a1b60648201526084016102f4565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106f8576106f8610ddd565b6001600160a01b0392831660209182029290920181019190915290891660009081526002909152604090205460ff166107325760fa61074f565b6001600160a01b0388166000908152600260205260409020600101545b8560028151811061076257610762610ddd565b602002602001018181525050876001600160a01b031663cfbf4d976040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a757600080fd5b505afa1580156107bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107df9190610d07565b866003815181106107f2576107f2610ddd565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff1661082c5760fa61084a565b6001600160a01b038816600090815260016020819052604090912001545b8560038151811061085d5761085d610ddd565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156108b857600080fd5b505afa1580156108cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f09190610d07565b6001600160a01b0316146109165760405162461bcd60e51b81526004016102f490610d24565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f585dff5ad62b9dc71ff704d3475179461e1846ee542f2e6f940fb3b1f41b24e99190a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156109b257600080fd5b505afa1580156109c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ea9190610d07565b6001600160a01b031614610a105760405162461bcd60e51b81526004016102f490610d24565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f45a926fd99cb5c25b970de6015f5a179dbe5402af5f392232db13f2d40086b84910161036b565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b158015610ac657600080fd5b505afa158015610ada573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610afe9190610d07565b6001600160a01b031614610b245760405162461bcd60e51b81526004016102f490610d24565b612710821115610b465760405162461bcd60e51b81526004016102f490610d70565b604080518082018252600180825260208083018681526001600160a01b0388166000818152600284528690209451855460ff1916901515178555905193830193909355925185815290927f236d38a8cdac19567ba384c1ea9833c930d1472ea05aa08c93d95e2224f7559391016104a8565b600060208284031215610bca57600080fd5b81356001600160e01b031981168114610be257600080fd5b9392505050565b6001600160a01b0381168114610bfe57600080fd5b50565b600060208284031215610c1357600080fd5b8135610be281610be9565b60008060408385031215610c3157600080fd5b8235610c3c81610be9565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b82811015610c8c5781516001600160a01b031684529284019290840190600101610c67565b5050508381038285015284518082528583019183019060005b81811015610cc157835183529284019291840191600101610ca5565b5090979650505050505050565b60008060408385031215610ce157600080fd5b8235610cec81610be9565b91506020830135610cfc81610be9565b809150509250929050565b600060208284031215610d1957600080fd5b8151610be281610be9565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b6020808252600b908201526a696e76616c69642062707360a81b604082015260600190565b60008060008060808587031215610dab57600080fd5b8451610db681610be9565b6020860151909450610dc781610be9565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610e1b57610e1b610df3565b500390565b6000816000190483118215151615610e3a57610e3a610df3565b50029056fea264697066735822122011665fd29213be57cbdc96333df6d8da6c7fd654fa81c3e3245a7b6bc6c306ce64736f6c63430008090033",
298
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c806301ffc9a7146100a95780631ba1e650146100d15780631d1e569c146100e75780633dfba7ab146100fc5780634d196fab1461010f57806397df3644146101535780639ca7dc7a146101805780639e0d31c2146101a1578063cf9a973c146101b4578063d020306d146100d1578063e6e97118146101c7578063e99f58da146101da575b600080fd5b6100bc6100b7366004610bb8565b61021b565b60405190151581526020015b60405180910390f35b6100d960fa81565b6040519081526020016100c8565b6100fa6100f5366004610c01565b610252565b005b6100fa61010a366004610c1e565b610377565b61013c61011d366004610c01565b6002602052600090815260409020805460019091015460ff9091169082565b6040805192151583526020830191909152016100c8565b61013c610161366004610c01565b6001602081905260009182526040909120805491015460ff9091169082565b61019361018e366004610c1e565b6104b5565b6040516100c8929190610c4a565b6100fa6101af366004610cce565b610874565b6100fa6101c2366004610c01565b61096e565b6100fa6101d5366004610c1e565b610a82565b6102036101e8366004610c01565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016100c8565b60006001600160e01b03198216634e53ee3d60e11b148061024c57506301ffc9a760e01b6001600160e01b03198316145b92915050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561029657600080fd5b505afa1580156102aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ce9190610d07565b6001600160a01b0316146102fd5760405162461bcd60e51b81526004016102f490610d24565b60405180910390fd5b604080518082018252600080825260208083018281526001600160a01b038716808452600283528584209451855460ff19169015151785559051600190940193909355925181815290927f236d38a8cdac19567ba384c1ea9833c930d1472ea05aa08c93d95e2224f7559391015b60405180910390a35050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103bb57600080fd5b505afa1580156103cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103f39190610d07565b6001600160a01b0316146104195760405162461bcd60e51b81526004016102f490610d24565b61271082111561043b5760405162461bcd60e51b81526004016102f490610d70565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f45a926fd99cb5c25b970de6015f5a179dbe5402af5f392232db13f2d40086b8491015b60405180910390a3505050565b60408051600480825260a0820190925260609182919060208201608080368337505060408051600480825260a08201909252929450905060208201608080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161053091815260200190565b60806040518083038186803b15801561054857600080fd5b505afa15801561055c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105809190610d95565b9350935093509350838660008151811061059c5761059c610ddd565b6001600160a01b0390921660209283029190910190910152806105c0836064610e09565b6105ca9190610e20565b856000815181106105dd576105dd610ddd565b60200260200101818152505082866001815181106105fd576105fd610ddd565b6001600160a01b039092166020928302919091019091015261061f8183610e20565b8560018151811061063257610632610ddd565b6020908102919091018101919091526001600160a01b03898116600090815291829052604090912054166106c65760405162461bcd60e51b815260206004820152603560248201527f506c6174666f726d20726f79616c74792061646472657373206d757374206265604482015274081919599a5b995908199bdc8818dbdb9d1c9858dd605a1b60648201526084016102f4565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106f8576106f8610ddd565b6001600160a01b0392831660209182029290920181019190915290891660009081526002909152604090205460ff166107325760fa61074f565b6001600160a01b0388166000908152600260205260409020600101545b8560028151811061076257610762610ddd565b602002602001018181525050876001600160a01b031663cfbf4d976040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a757600080fd5b505afa1580156107bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107df9190610d07565b866003815181106107f2576107f2610ddd565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff1661082c5760fa61084a565b6001600160a01b038816600090815260016020819052604090912001545b8560038151811061085d5761085d610ddd565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156108b857600080fd5b505afa1580156108cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f09190610d07565b6001600160a01b0316146109165760405162461bcd60e51b81526004016102f490610d24565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f585dff5ad62b9dc71ff704d3475179461e1846ee542f2e6f940fb3b1f41b24e99190a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156109b257600080fd5b505afa1580156109c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ea9190610d07565b6001600160a01b031614610a105760405162461bcd60e51b81526004016102f490610d24565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f45a926fd99cb5c25b970de6015f5a179dbe5402af5f392232db13f2d40086b84910161036b565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b158015610ac657600080fd5b505afa158015610ada573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610afe9190610d07565b6001600160a01b031614610b245760405162461bcd60e51b81526004016102f490610d24565b612710821115610b465760405162461bcd60e51b81526004016102f490610d70565b604080518082018252600180825260208083018681526001600160a01b0388166000818152600284528690209451855460ff1916901515178555905193830193909355925185815290927f236d38a8cdac19567ba384c1ea9833c930d1472ea05aa08c93d95e2224f7559391016104a8565b600060208284031215610bca57600080fd5b81356001600160e01b031981168114610be257600080fd5b9392505050565b6001600160a01b0381168114610bfe57600080fd5b50565b600060208284031215610c1357600080fd5b8135610be281610be9565b60008060408385031215610c3157600080fd5b8235610c3c81610be9565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b82811015610c8c5781516001600160a01b031684529284019290840190600101610c67565b5050508381038285015284518082528583019183019060005b81811015610cc157835183529284019291840191600101610ca5565b5090979650505050505050565b60008060408385031215610ce157600080fd5b8235610cec81610be9565b91506020830135610cfc81610be9565b809150509250929050565b600060208284031215610d1957600080fd5b8151610be281610be9565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b6020808252600b908201526a696e76616c69642062707360a81b604082015260600190565b60008060008060808587031215610dab57600080fd5b8451610db681610be9565b6020860151909450610dc781610be9565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610e1b57610e1b610df3565b500390565b6000816000190483118215151615610e3a57610e3a610df3565b50029056fea264697066735822122011665fd29213be57cbdc96333df6d8da6c7fd654fa81c3e3245a7b6bc6c306ce64736f6c63430008090033",
299
299
  "linkReferences": {},
300
300
  "deployedLinkReferences": {}
301
301
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  pragma solidity 0.8.19;
4
4
 
5
- import "./interfaces/0.8.x/IAdminACLV0.sol";
5
+ import "./interfaces/v0.8.x/IAdminACLV0.sol";
6
6
  import "@openzeppelin-4.7/contracts/access/Ownable.sol";
7
7
  import "@openzeppelin-4.7/contracts/utils/introspection/ERC165.sol";
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  pragma solidity 0.8.19;
4
4
 
5
- import "./interfaces/0.8.x/IAdminACLV0.sol";
5
+ import "./interfaces/v0.8.x/IAdminACLV0.sol";
6
6
  import "./GenArt721CoreV3.sol";
7
7
  import "@openzeppelin-4.7/contracts/access/Ownable.sol";
8
8
  import "@openzeppelin-4.7/contracts/utils/introspection/ERC165.sol";