@artblocks/contracts 1.0.2 → 1.0.4

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 (387) hide show
  1. package/README.md +56 -21
  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 +141 -15
  5. package/artifacts/contracts/GenArt721CoreV3.sol/GenArt721CoreV3.json +42 -5
  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/{GenArt721CoreV2_ENGINE_FLEX.sol → V2/GenArt721CoreV2_ENGINE_FLEX.sol}/GenArt721CoreV2_ENGINE_FLEX.json +3 -3
  34. package/artifacts/contracts/engine/{GenArt721CoreV2_PBAB.sol → V2/GenArt721CoreV2_PBAB.sol}/GenArt721CoreV2_PBAB.json +3 -3
  35. package/artifacts/contracts/engine/{GenArt721CoreV2_PRTNR.sol → V2/GenArt721CoreV2_PRTNR.sol}/GenArt721CoreV2_PRTNR.json +3 -3
  36. package/artifacts/contracts/engine/{GenArt721MinterBurner_PBAB.sol → V2/GenArt721MinterBurner_PBAB.sol}/GenArt721MinterBurner_PBAB.json +3 -3
  37. package/artifacts/contracts/engine/{GenArt721MinterDAExp_PBAB.sol → V2/GenArt721MinterDAExp_PBAB.sol}/GenArt721MinterDAExp_PBAB.json +3 -3
  38. package/artifacts/contracts/engine/{GenArt721Minter_PBAB.sol → V2/GenArt721Minter_PBAB.sol}/GenArt721Minter_PBAB.json +3 -3
  39. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +1960 -0
  40. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +2247 -0
  41. package/artifacts/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol/GenArt721CoreV3_Engine_Flex_PROOF.json +2247 -0
  42. package/artifacts/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol/AdminACLV0_PROHIBITION.json +401 -0
  43. package/artifacts/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol/GenArt721CoreV3_Engine_Flex_PROHIBITION.json +2281 -0
  44. package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IAdminACLV0_PROHIBITION.sol/IAdminACLV0_PROHIBITION.json +359 -0
  45. package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.json +1094 -0
  46. package/artifacts/contracts/engine-registry/CoreRegistryV1.sol/CoreRegistryV1.json +242 -0
  47. package/artifacts/contracts/engine-registry/EngineRegistryV0.sol/EngineRegistryV0.json +2 -2
  48. package/artifacts/contracts/explorations/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +41 -4
  49. package/artifacts/contracts/interfaces/{0.5.x → v0.5.x}/IBonusContract.sol/IBonusContract.json +1 -1
  50. package/artifacts/contracts/interfaces/{0.5.x → v0.5.x}/IGenArt721CoreContractV1.sol/IGenArt721CoreContractV1.json +1 -1
  51. package/artifacts/contracts/interfaces/{0.5.x → v0.5.x}/IGenArt721CoreV2_PBAB.sol/IGenArt721CoreV2_PBAB.json +1 -1
  52. package/artifacts/contracts/interfaces/{0.5.x → v0.5.x}/IRandomizer.sol/IRandomizer.json +1 -1
  53. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IAdminACLV0.sol/IAdminACLV0.json +1 -1
  54. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IArtblocksRoyaltyOverride.sol/IArtblocksRoyaltyOverride.json +1 -1
  55. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IBonusContract.sol/IBonusContract.json +1 -1
  56. package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReader.sol/IBytecodeStorageReader.json +111 -0
  57. package/artifacts/contracts/interfaces/v0.8.x/ICoreRegistryV1.sol/ICoreRegistryV1.json +172 -0
  58. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IDelegationRegistry.sol/IDelegationRegistry.json +1 -1
  59. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IDependencyRegistryCompatibleV0.sol/IDependencyRegistryCompatibleV0.json +1 -1
  60. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IDependencyRegistryV0.sol/IDependencyRegistryV0.json +3 -3
  61. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IEngineRegistryV0.sol/IEngineRegistryV0.json +1 -1
  62. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlementV0.sol/IFilteredMinterDAExpSettlementV0.json +1 -1
  63. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlementV1.sol/IFilteredMinterDAExpSettlementV1.json +1 -1
  64. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlement_Mixin.sol/IFilteredMinterDAExpSettlement_Mixin.json +1 -1
  65. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpV0.sol/IFilteredMinterDAExpV0.json +1 -1
  66. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpV1.sol/IFilteredMinterDAExpV1.json +1 -1
  67. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDALinV0.sol/IFilteredMinterDALinV0.json +1 -1
  68. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDALinV1.sol/IFilteredMinterDALinV1.json +1 -1
  69. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV0.sol/IFilteredMinterHolderV0.json +1 -1
  70. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV1.sol/IFilteredMinterHolderV1.json +1 -1
  71. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV2.sol/IFilteredMinterHolderV2.json +1 -1
  72. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV0.sol/IFilteredMinterMerkleV0.json +1 -1
  73. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV1.sol/IFilteredMinterMerkleV1.json +1 -1
  74. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV2.sol/IFilteredMinterMerkleV2.json +1 -1
  75. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterSEAV0.sol/IFilteredMinterSEAV0.json +56 -54
  76. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV0.sol/IFilteredMinterV0.json +1 -1
  77. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV1.sol/IFilteredMinterV1.json +1 -1
  78. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV2.sol/IFilteredMinterV2.json +1 -1
  79. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractExposesHashSeed.sol/IGenArt721CoreContractExposesHashSeed.json +30 -0
  80. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV1.sol/IGenArt721CoreContractV1.json +1 -1
  81. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +14 -1
  82. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3WithSharedRandomizer.sol/IGenArt721CoreContractV3WithSharedRandomizer.json +24 -0
  83. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +14 -1
  84. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +8 -14
  85. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +8 -14
  86. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreV2_PBAB.sol/IGenArt721CoreV2_PBAB.json +1 -1
  87. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IManifold.sol/IManifold.json +1 -1
  88. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMinterBaseV0.sol/IMinterBaseV0.json +1 -1
  89. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMinterFilterV0.sol/IMinterFilterV0.json +1 -1
  90. package/artifacts/contracts/interfaces/v0.8.x/IMinterFilterV1.sol/IMinterFilterV1.json +514 -0
  91. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMintingAPICoreV0.sol/IMintingAPICoreV0.json +1 -1
  92. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IMintingAPIMinterV0.sol/IMintingAPIMinterV0.json +1 -1
  93. package/artifacts/contracts/interfaces/v0.8.x/IPseudorandomAtomic.sol/IPseudorandomAtomic.json +30 -0
  94. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizer.sol/IRandomizer.json +1 -1
  95. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizerPolyptychV0.sol/IRandomizerPolyptychV0.json +1 -1
  96. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizerV2.sol/IRandomizerV2.json +1 -1
  97. package/artifacts/contracts/interfaces/v0.8.x/IRandomizer_V3CoreBase.sol/IRandomizer_V3CoreBase.json +24 -0
  98. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDAExpSettlementV0.sol/ISharedMinterDAExpSettlementV0.json +207 -0
  99. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDAExpV0.sol/ISharedMinterDAExpV0.json +93 -0
  100. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDALinV0.sol/ISharedMinterDALinV0.json +93 -0
  101. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterDAV0.sol/ISharedMinterDAV0.json +69 -0
  102. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterHolderV0.sol/ISharedMinterHolderV0.json +203 -0
  103. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterMerkleV0.sol/ISharedMinterMerkleV0.json +123 -0
  104. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterSEAV0.sol/ISharedMinterSEAV0.json +261 -0
  105. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterSimplePurchaseV0.sol/ISharedMinterSimplePurchaseV0.json +64 -0
  106. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterV0.sol/ISharedMinterV0.json +533 -0
  107. package/artifacts/contracts/interfaces/v0.8.x/ISharedRandomizerV0.sol/ISharedRandomizerV0.json +223 -0
  108. package/artifacts/contracts/interfaces/{0.8.x → v0.8.x}/IWETH.sol/IWETH.json +1 -1
  109. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/Address.json +2 -2
  110. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/Counters.json +2 -2
  111. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/CustomERC721Metadata.json +2 -2
  112. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/ERC721.json +2 -2
  113. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/ERC721Enumerable.json +2 -2
  114. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/GenArt721CoreV1.json +2 -2
  115. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/SafeMath.json +2 -2
  116. package/artifacts/contracts/legacy/GenArt721CoreV1.sol/Strings.json +2 -2
  117. package/artifacts/contracts/legacy/GenArt721LegacyMinter.sol/GenArt721LegacyMinter.json +2 -2
  118. package/artifacts/contracts/libs/integration-refs/delegation-registry/DelegationRegistry.sol/DelegationRegistry.json +2 -2
  119. package/artifacts/contracts/libs/integration-refs/gnosis-safe/GnosisSafeMock.sol/GnosisSafeMock.json +2 -2
  120. package/artifacts/contracts/libs/integration-refs/gnosis-safe/GnosisSafeProxyFactoryMock.sol/GnosisSafeProxyFactoryMock.json +2 -2
  121. package/artifacts/contracts/libs/integration-refs/gnosis-safe/MultiSendMock.sol/MultiSendMock.json +2 -2
  122. package/artifacts/contracts/libs/integration-refs/weth9/weth9.sol/WETH9_.json +2 -2
  123. package/artifacts/contracts/libs/{0.5.x → v0.5.x}/CustomERC721Metadata.sol/CustomERC721Metadata.json +3 -3
  124. package/artifacts/contracts/libs/{0.5.x → v0.5.x}/IERC20.sol/IERC20.json +1 -1
  125. package/artifacts/contracts/libs/{0.5.x → v0.5.x}/SafeMath.sol/SafeMath.json +3 -3
  126. package/artifacts/contracts/libs/{0.5.x → v0.5.x}/Strings.sol/Strings.json +3 -3
  127. package/artifacts/contracts/libs/v0.8.x/ABHelpers.sol/ABHelpers.json +10 -0
  128. package/artifacts/contracts/libs/v0.8.x/AuthLib.sol/AuthLib.json +10 -0
  129. package/artifacts/contracts/libs/{0.8.x/BytecodeStorage.sol → v0.8.x/BytecodeStorageV0.sol}/BytecodeStorage.json +3 -3
  130. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV1.sol/BytecodeStorageReader.json +163 -0
  131. package/artifacts/contracts/libs/v0.8.x/BytecodeStorageV1.sol/BytecodeStorageWriter.json +10 -0
  132. package/artifacts/contracts/libs/{0.8.x → v0.8.x}/Bytes32Strings.sol/Bytes32Strings.json +3 -3
  133. package/artifacts/contracts/libs/{0.8.x → v0.8.x}/ERC721_PackedHashSeed.sol/ERC721_PackedHashSeed.json +3 -3
  134. package/artifacts/contracts/libs/v0.8.x/SSTORE2.sol/SSTORE2.json +10 -0
  135. package/artifacts/contracts/libs/v0.8.x/minter-libs/DAExpLib.sol/DAExpLib.json +10 -0
  136. package/artifacts/contracts/libs/v0.8.x/minter-libs/DALinLib.sol/DALinLib.json +10 -0
  137. package/artifacts/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol/MaxInvocationsLib.json +10 -0
  138. package/artifacts/contracts/libs/v0.8.x/minter-libs/MerkleLib.sol/MerkleLib.json +10 -0
  139. package/artifacts/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol/PolyptychLib.json +10 -0
  140. package/artifacts/contracts/libs/v0.8.x/minter-libs/SEALib.sol/SEALib.json +10 -0
  141. package/artifacts/contracts/libs/v0.8.x/minter-libs/SetPriceLib.sol/SetPriceLib.json +10 -0
  142. package/artifacts/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol/SettlementExpLib.json +10 -0
  143. package/artifacts/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol/SplitFundsLib.json +10 -0
  144. package/artifacts/contracts/libs/v0.8.x/minter-libs/TokenHolderLib.sol/TokenHolderLib.json +10 -0
  145. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV0.sol/MinterFilterV0.json +2 -2
  146. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +2 -2
  147. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV2.sol/MinterFilterV2.json +748 -0
  148. package/artifacts/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol/MinterDAExpHolderV5.json +1228 -0
  149. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +2 -2
  150. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol/MinterDAExpSettlementV3.json +1146 -0
  151. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV4.sol/MinterDAExpV4.json +2 -2
  152. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV5.sol/MinterDAExpV5.json +909 -0
  153. package/artifacts/contracts/minter-suite/Minters/MinterDALinHolderV5.sol/MinterDALinHolderV5.json +1228 -0
  154. package/artifacts/contracts/minter-suite/Minters/MinterDALinV4.sol/MinterDALinV4.json +2 -2
  155. package/artifacts/contracts/minter-suite/Minters/MinterDALinV5.sol/MinterDALinV5.json +909 -0
  156. package/artifacts/contracts/minter-suite/Minters/MinterHolderV4.sol/MinterHolderV4.json +2 -2
  157. package/artifacts/contracts/minter-suite/Minters/MinterMerkleV5.sol/MinterMerkleV5.json +2 -2
  158. package/artifacts/contracts/minter-suite/Minters/MinterPolyptychV0.sol/IGenArt721CoreContractV3WithRandomizer.json +10 -160
  159. package/artifacts/contracts/minter-suite/Minters/MinterPolyptychV0.sol/MinterPolyptychV0.json +2 -2
  160. package/artifacts/contracts/minter-suite/Minters/MinterSEAV0.sol/MinterSEAV0.json +59 -80
  161. package/artifacts/contracts/minter-suite/Minters/MinterSEAV1.sol/MinterSEAV1.json +1325 -0
  162. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +2 -2
  163. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol/MinterSetPriceERC20V5.json +848 -0
  164. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol/MinterSetPriceHolderV5.json +1091 -0
  165. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol/MinterSetPriceMerkleV5.json +1075 -0
  166. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol/MinterSetPricePolyptychERC20V5.json +1243 -0
  167. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol/MinterSetPricePolyptychV5.json +1167 -0
  168. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV4.sol/MinterSetPriceV4.json +2 -2
  169. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV5.sol/MinterSetPriceV5.json +772 -0
  170. package/artifacts/contracts/mock/{BytecodeTextCR_DMock.sol/BytecodeTextCR_DMock.json → BytecodeV0TextCR_DMock.sol/BytecodeV0TextCR_DMock.json} +4 -4
  171. package/artifacts/contracts/mock/BytecodeV1LibCallsMock.sol/BytecodeV1LibCallsMock.json +135 -0
  172. package/artifacts/contracts/mock/BytecodeV1TextCR_DMock.sol/BytecodeV1TextCR_DMock.json +301 -0
  173. package/artifacts/contracts/mock/DeadReceiverBidderMock.sol/DeadReceiverBidderMock.json +25 -2
  174. package/artifacts/contracts/mock/DeadReceiverMock.sol/DeadReceiverMock.json +2 -2
  175. package/artifacts/contracts/mock/DummySharedMinter.sol/DummySharedMinter.json +114 -0
  176. package/artifacts/contracts/mock/ERC20Mock.sol/ERC20Mock.json +28 -2
  177. package/artifacts/contracts/mock/GasLimitReceiverBidderMock.sol/GasLimitReceiverBidderMock.json +2 -2
  178. package/artifacts/contracts/mock/GasLimitReceiverMock.sol/GasLimitReceiverMock.json +2 -2
  179. package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +22 -4
  180. package/artifacts/contracts/mock/MockAdminACLV0.sol/MockAdminACLV0Events.json +2 -2
  181. package/artifacts/contracts/mock/MockAdminACLV0_PROHIBITION.sol/MockAdminACLV0Events_PROHIBITION.json +440 -0
  182. package/artifacts/contracts/mock/OriginRegisterMock.sol/OriginRegisterMock.json +39 -0
  183. package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +2 -2
  184. package/artifacts/contracts/mock/ReentrancyHolderMock.sol/ReentrancyHolderMock.json +2 -2
  185. package/artifacts/contracts/mock/ReentrancyMerkleMock.sol/ReentrancyMerkleMock.json +2 -2
  186. package/artifacts/contracts/mock/ReentrancyMock.sol/ReentrancyMock.json +2 -2
  187. package/artifacts/contracts/mock/ReentrancySEAMock.sol/ReentrancySEAAutoBidderMock.json +2 -2
  188. package/artifacts/contracts/mock/SSTORE2Mock.sol/SSTORE2Mock.json +118 -0
  189. package/artifacts/contracts/randomizer/{BasicRandomizer.sol → deprecated/BasicRandomizer.sol}/BasicRandomizer.json +3 -3
  190. package/artifacts/contracts/randomizer/{BasicRandomizerBase_v0_0_0.sol → deprecated/BasicRandomizerBase_v0_0_0.sol}/RandomizerBase.json +1 -1
  191. package/artifacts/contracts/randomizer/{PolyptychRandomizerV0.sol → deprecated/PolyptychRandomizerV0.sol}/BasicPolyptychRandomizerV0.json +3 -3
  192. package/artifacts/contracts/randomizer/{RandomizerV2.sol → deprecated/RandomizerV2.sol}/BasicRandomizerV2.json +3 -3
  193. package/artifacts/contracts/randomizer/primitive/PseudorandomAtomicBasic.sol/PseudorandomAtomic.json +30 -0
  194. package/artifacts/contracts/randomizer/shared/SharedRandomizerV0.sol/SharedRandomizerV0.json +247 -0
  195. package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverride.sol/GenArt721RoyaltyOverride.json +2 -2
  196. package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverride_PBAB.sol/GenArt721RoyaltyOverride_PBAB.json +2 -2
  197. package/contracts/AdminACLV0.sol +2 -2
  198. package/contracts/AdminACLV1.sol +2 -2
  199. package/contracts/DependencyRegistryV0.sol +219 -123
  200. package/contracts/GenArt721CoreV3.sol +60 -42
  201. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV0.sol +3 -3
  202. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV1.sol +3 -3
  203. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol +4 -4
  204. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol +4 -4
  205. package/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol +4 -4
  206. package/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol +4 -4
  207. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV0.sol +3 -3
  208. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV1.sol +3 -3
  209. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol +4 -4
  210. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol +4 -4
  211. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV0.sol +3 -3
  212. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol +4 -4
  213. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol +5 -5
  214. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol +5 -5
  215. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV0.sol +3 -3
  216. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol +4 -4
  217. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol +5 -5
  218. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol +5 -5
  219. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol +5 -5
  220. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV0.sol +3 -3
  221. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV1.sol +3 -3
  222. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol +4 -4
  223. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol +4 -4
  224. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V0.sol +3 -3
  225. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V1.sol +3 -3
  226. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol +4 -4
  227. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol +4 -4
  228. package/contracts/engine/{GenArt721CoreV2_ENGINE_FLEX.sol → V2/GenArt721CoreV2_ENGINE_FLEX.sol} +2 -2
  229. package/contracts/engine/{GenArt721CoreV2_PBAB.sol → V2/GenArt721CoreV2_PBAB.sol} +2 -2
  230. package/contracts/engine/{GenArt721CoreV2_PRTNR.sol → V2/GenArt721CoreV2_PRTNR.sol} +3 -3
  231. package/contracts/engine/{GenArt721MinterBurner_PBAB.sol → V2/GenArt721MinterBurner_PBAB.sol} +2 -2
  232. package/contracts/engine/{GenArt721MinterDAExp_PBAB.sol → V2/GenArt721MinterDAExp_PBAB.sol} +2 -2
  233. package/contracts/engine/{GenArt721Minter_PBAB.sol → V2/GenArt721Minter_PBAB.sol} +2 -2
  234. package/contracts/{GenArt721CoreV3_Engine.sol → engine/V3/GenArt721CoreV3_Engine.sol} +48 -24
  235. package/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol +2298 -0
  236. package/contracts/{GenArt721CoreV3_Engine_Flex.sol → engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol} +50 -31
  237. package/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol +281 -0
  238. package/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol +2359 -0
  239. package/contracts/engine/V3/forks/PROHIBITION/interfaces/IAdminACLV0_PROHIBITION.sol +123 -0
  240. package/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol +29 -0
  241. package/contracts/engine-registry/CoreRegistryV1.sol +254 -0
  242. package/contracts/engine-registry/EngineRegistryV0.sol +2 -2
  243. package/contracts/explorations/GenArt721CoreV3_Explorations.sol +58 -40
  244. package/contracts/interfaces/v0.8.x/IBytecodeStorageReader.sol +62 -0
  245. package/contracts/interfaces/v0.8.x/ICoreRegistryV1.sol +27 -0
  246. package/contracts/interfaces/{0.8.x → v0.8.x}/IDelegationRegistry.sol +1 -1
  247. package/contracts/interfaces/{0.8.x → v0.8.x}/IDependencyRegistryCompatibleV0.sol +1 -1
  248. package/contracts/interfaces/{0.8.x → v0.8.x}/IDependencyRegistryV0.sol +3 -3
  249. package/contracts/interfaces/{0.8.x → v0.8.x}/IEngineRegistryV0.sol +1 -1
  250. package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterSEAV0.sol +34 -15
  251. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractExposesHashSeed.sol +11 -0
  252. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3WithSharedRandomizer.sol +23 -0
  253. package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Base.sol +3 -0
  254. package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Engine.sol +0 -5
  255. package/contracts/interfaces/v0.8.x/IMinterFilterV1.sol +184 -0
  256. package/contracts/interfaces/v0.8.x/IPseudorandomAtomic.sol +16 -0
  257. package/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizerPolyptychV0.sol +1 -1
  258. package/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizerV2.sol +2 -5
  259. package/contracts/interfaces/v0.8.x/IRandomizer_V3CoreBase.sol +23 -0
  260. package/contracts/interfaces/v0.8.x/ISharedMinterDAExpSettlementV0.sol +37 -0
  261. package/contracts/interfaces/v0.8.x/ISharedMinterDAExpV0.sol +25 -0
  262. package/contracts/interfaces/v0.8.x/ISharedMinterDALinV0.sol +26 -0
  263. package/contracts/interfaces/v0.8.x/ISharedMinterDAV0.sol +19 -0
  264. package/contracts/interfaces/v0.8.x/ISharedMinterHolderV0.sol +69 -0
  265. package/contracts/interfaces/v0.8.x/ISharedMinterMerkleV0.sol +44 -0
  266. package/contracts/interfaces/v0.8.x/ISharedMinterSEAV0.sol +78 -0
  267. package/contracts/interfaces/v0.8.x/ISharedMinterSimplePurchaseV0.sol +28 -0
  268. package/contracts/interfaces/v0.8.x/ISharedMinterV0.sol +191 -0
  269. package/contracts/interfaces/v0.8.x/ISharedRandomizerV0.sol +123 -0
  270. package/contracts/legacy/GenArt721CoreV1.sol +2 -2
  271. package/contracts/legacy/GenArt721LegacyMinter.sol +5 -5
  272. package/contracts/libs/integration-refs/delegation-registry/DelegationRegistry.sol +2 -2
  273. package/contracts/libs/integration-refs/weth9/weth9.sol +2 -0
  274. package/contracts/libs/v0.8.x/ABHelpers.sol +55 -0
  275. package/contracts/libs/v0.8.x/AuthLib.sol +197 -0
  276. package/contracts/libs/v0.8.x/BytecodeStorageV1.sol +399 -0
  277. package/contracts/libs/v0.8.x/SSTORE2.sol +109 -0
  278. package/contracts/libs/v0.8.x/minter-libs/DAExpLib.sol +125 -0
  279. package/contracts/libs/v0.8.x/minter-libs/DALinLib.sol +109 -0
  280. package/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol +348 -0
  281. package/contracts/libs/v0.8.x/minter-libs/MerkleLib.sol +175 -0
  282. package/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol +160 -0
  283. package/contracts/libs/v0.8.x/minter-libs/SEALib.sol +320 -0
  284. package/contracts/libs/v0.8.x/minter-libs/SetPriceLib.sol +44 -0
  285. package/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol +390 -0
  286. package/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol +583 -0
  287. package/contracts/libs/v0.8.x/minter-libs/TokenHolderLib.sol +153 -0
  288. package/contracts/minter-suite/MinterFilter/MinterFilterV0.sol +3 -3
  289. package/contracts/minter-suite/MinterFilter/MinterFilterV1.sol +6 -6
  290. package/contracts/minter-suite/MinterFilter/MinterFilterV2.sol +830 -0
  291. package/contracts/minter-suite/Minters/MinterBase_v0_1_1.sol +4 -4
  292. package/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol +966 -0
  293. package/contracts/minter-suite/Minters/MinterDAExpSettlementV2.sol +4 -4
  294. package/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol +1126 -0
  295. package/contracts/minter-suite/Minters/MinterDAExpV4.sol +4 -4
  296. package/contracts/minter-suite/Minters/MinterDAExpV5.sol +606 -0
  297. package/contracts/minter-suite/Minters/MinterDALinHolderV5.sol +952 -0
  298. package/contracts/minter-suite/Minters/MinterDALinV4.sol +4 -4
  299. package/contracts/minter-suite/Minters/MinterDALinV5.sol +591 -0
  300. package/contracts/minter-suite/Minters/MinterHolderV4.sol +5 -5
  301. package/contracts/minter-suite/Minters/MinterMerkleV5.sol +5 -5
  302. package/contracts/minter-suite/Minters/MinterPolyptychV0.sol +18 -17
  303. package/contracts/minter-suite/Minters/MinterSEAV0.sol +235 -186
  304. package/contracts/minter-suite/Minters/MinterSEAV1.sol +1190 -0
  305. package/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol +6 -6
  306. package/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol +570 -0
  307. package/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol +821 -0
  308. package/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol +802 -0
  309. package/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol +1096 -0
  310. package/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol +992 -0
  311. package/contracts/minter-suite/Minters/MinterSetPriceV4.sol +4 -4
  312. package/contracts/minter-suite/Minters/MinterSetPriceV5.sol +461 -0
  313. package/contracts/mock/{BytecodeTextCR_DMock.sol → BytecodeV0TextCR_DMock.sol} +5 -5
  314. package/contracts/mock/BytecodeV1LibCallsMock.sol +114 -0
  315. package/contracts/mock/BytecodeV1TextCR_DMock.sol +233 -0
  316. package/contracts/mock/DeadReceiverBidderMock.sol +16 -1
  317. package/contracts/mock/DeadReceiverMock.sol +1 -1
  318. package/contracts/mock/DummySharedMinter.sol +75 -0
  319. package/contracts/mock/ERC20Mock.sol +16 -0
  320. package/contracts/mock/GasLimitReceiverBidderMock.sol +1 -1
  321. package/contracts/mock/GasLimitReceiverMock.sol +1 -1
  322. package/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol +22 -35
  323. package/contracts/mock/MockAdminACLV0.sol +2 -2
  324. package/contracts/mock/MockAdminACLV0_PROHIBITION.sol +207 -0
  325. package/contracts/mock/OriginRegisterMock.sol +27 -0
  326. package/contracts/mock/RandomizerV2_NoAssignMock.sol +2 -2
  327. package/contracts/mock/ReentrancyHolderMock.sol +1 -1
  328. package/contracts/mock/ReentrancyMerkleMock.sol +1 -1
  329. package/contracts/mock/ReentrancyMock.sol +1 -1
  330. package/contracts/mock/ReentrancySEAMock.sol +1 -1
  331. package/contracts/mock/SSTORE2Mock.sol +93 -0
  332. package/contracts/randomizer/{BasicRandomizer.sol → deprecated/BasicRandomizer.sol} +1 -1
  333. package/contracts/randomizer/{BasicRandomizerBase_v0_0_0.sol → deprecated/BasicRandomizerBase_v0_0_0.sol} +1 -1
  334. package/contracts/randomizer/{PolyptychRandomizerV0.sol → deprecated/PolyptychRandomizerV0.sol} +3 -3
  335. package/contracts/randomizer/{RandomizerV2.sol → deprecated/RandomizerV2.sol} +3 -3
  336. package/contracts/randomizer/primitive/PseudorandomAtomicBasic.sol +30 -0
  337. package/contracts/randomizer/shared/SharedRandomizerV0.sol +260 -0
  338. package/contracts/royalty-registry/GenArt721RoyaltyOverride.sol +2 -2
  339. package/contracts/royalty-registry/GenArt721RoyaltyOverride_PBAB.sol +2 -2
  340. package/package.json +51 -43
  341. package/.env.example +0 -17
  342. package/LICENSE +0 -165
  343. package/artifacts/contracts/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +0 -1942
  344. package/artifacts/contracts/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +0 -2229
  345. package/artifacts/contracts/engine-registry/future/EngineRegistryV1.sol/EngineRegistryV1.json +0 -109
  346. package/contracts/engine-registry/future/EngineRegistryV1.sol +0 -86
  347. /package/contracts/interfaces/{0.5.x → v0.5.x}/IBonusContract.sol +0 -0
  348. /package/contracts/interfaces/{0.5.x → v0.5.x}/IGenArt721CoreContractV1.sol +0 -0
  349. /package/contracts/interfaces/{0.5.x → v0.5.x}/IGenArt721CoreV2_PBAB.sol +0 -0
  350. /package/contracts/interfaces/{0.5.x → v0.5.x}/IRandomizer.sol +0 -0
  351. /package/contracts/interfaces/{0.8.x → v0.8.x}/IAdminACLV0.sol +0 -0
  352. /package/contracts/interfaces/{0.8.x → v0.8.x}/IArtblocksRoyaltyOverride.sol +0 -0
  353. /package/contracts/interfaces/{0.8.x → v0.8.x}/IBonusContract.sol +0 -0
  354. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlementV0.sol +0 -0
  355. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlementV1.sol +0 -0
  356. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpSettlement_Mixin.sol +0 -0
  357. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpV0.sol +0 -0
  358. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDAExpV1.sol +0 -0
  359. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDALinV0.sol +0 -0
  360. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterDALinV1.sol +0 -0
  361. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV0.sol +0 -0
  362. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV1.sol +0 -0
  363. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterHolderV2.sol +0 -0
  364. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV0.sol +0 -0
  365. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV1.sol +0 -0
  366. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterMerkleV2.sol +0 -0
  367. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV0.sol +0 -0
  368. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV1.sol +0 -0
  369. /package/contracts/interfaces/{0.8.x → v0.8.x}/IFilteredMinterV2.sol +0 -0
  370. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV1.sol +0 -0
  371. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3.sol +0 -0
  372. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreContractV3_Engine_Flex.sol +0 -0
  373. /package/contracts/interfaces/{0.8.x → v0.8.x}/IGenArt721CoreV2_PBAB.sol +0 -0
  374. /package/contracts/interfaces/{0.8.x → v0.8.x}/IManifold.sol +0 -0
  375. /package/contracts/interfaces/{0.8.x → v0.8.x}/IMinterBaseV0.sol +0 -0
  376. /package/contracts/interfaces/{0.8.x → v0.8.x}/IMinterFilterV0.sol +0 -0
  377. /package/contracts/interfaces/{0.8.x → v0.8.x}/IMintingAPICoreV0.sol +0 -0
  378. /package/contracts/interfaces/{0.8.x → v0.8.x}/IMintingAPIMinterV0.sol +0 -0
  379. /package/contracts/interfaces/{0.8.x → v0.8.x}/IRandomizer.sol +0 -0
  380. /package/contracts/interfaces/{0.8.x → v0.8.x}/IWETH.sol +0 -0
  381. /package/contracts/libs/{0.5.x → v0.5.x}/CustomERC721Metadata.sol +0 -0
  382. /package/contracts/libs/{0.5.x → v0.5.x}/IERC20.sol +0 -0
  383. /package/contracts/libs/{0.5.x → v0.5.x}/SafeMath.sol +0 -0
  384. /package/contracts/libs/{0.5.x → v0.5.x}/Strings.sol +0 -0
  385. /package/contracts/libs/{0.8.x/BytecodeStorage.sol → v0.8.x/BytecodeStorageV0.sol} +0 -0
  386. /package/contracts/libs/{0.8.x → v0.8.x}/Bytes32Strings.sol +0 -0
  387. /package/contracts/libs/{0.8.x → v0.8.x}/ERC721_PackedHashSeed.sol +0 -0
@@ -0,0 +1,223 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "ISharedRandomizerV0",
4
+ "sourceName": "contracts/interfaces/v0.8.x/ISharedRandomizerV0.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": true,
11
+ "internalType": "address",
12
+ "name": "coreContract",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "indexed": true,
17
+ "internalType": "uint256",
18
+ "name": "projectId",
19
+ "type": "uint256"
20
+ },
21
+ {
22
+ "indexed": true,
23
+ "internalType": "address",
24
+ "name": "hashSeedSetterContract",
25
+ "type": "address"
26
+ }
27
+ ],
28
+ "name": "HashSeedSetterForProjectUpdated",
29
+ "type": "event"
30
+ },
31
+ {
32
+ "anonymous": false,
33
+ "inputs": [
34
+ {
35
+ "indexed": false,
36
+ "internalType": "address",
37
+ "name": "coreContract",
38
+ "type": "address"
39
+ },
40
+ {
41
+ "indexed": false,
42
+ "internalType": "uint256",
43
+ "name": "projectId",
44
+ "type": "uint256"
45
+ },
46
+ {
47
+ "indexed": false,
48
+ "internalType": "bool",
49
+ "name": "usingHashSeedSetter",
50
+ "type": "bool"
51
+ }
52
+ ],
53
+ "name": "ProjectUsingHashSeedSetterUpdated",
54
+ "type": "event"
55
+ },
56
+ {
57
+ "anonymous": false,
58
+ "inputs": [
59
+ {
60
+ "indexed": true,
61
+ "internalType": "address",
62
+ "name": "pseudorandomAtomicContract",
63
+ "type": "address"
64
+ }
65
+ ],
66
+ "name": "PseudorandomAtomicContractUpdated",
67
+ "type": "event"
68
+ },
69
+ {
70
+ "inputs": [
71
+ {
72
+ "internalType": "uint256",
73
+ "name": "_tokenId",
74
+ "type": "uint256"
75
+ }
76
+ ],
77
+ "name": "assignTokenHash",
78
+ "outputs": [],
79
+ "stateMutability": "nonpayable",
80
+ "type": "function"
81
+ },
82
+ {
83
+ "inputs": [
84
+ {
85
+ "internalType": "address",
86
+ "name": "_coreContract",
87
+ "type": "address"
88
+ },
89
+ {
90
+ "internalType": "uint256",
91
+ "name": "_projectId",
92
+ "type": "uint256"
93
+ }
94
+ ],
95
+ "name": "hashSeedSetterContracts",
96
+ "outputs": [
97
+ {
98
+ "internalType": "address",
99
+ "name": "_hashSeedSetterContract",
100
+ "type": "address"
101
+ }
102
+ ],
103
+ "stateMutability": "view",
104
+ "type": "function"
105
+ },
106
+ {
107
+ "inputs": [
108
+ {
109
+ "internalType": "address",
110
+ "name": "_coreContract",
111
+ "type": "address"
112
+ },
113
+ {
114
+ "internalType": "uint256",
115
+ "name": "_tokenId",
116
+ "type": "uint256"
117
+ }
118
+ ],
119
+ "name": "preAssignedHashSeed",
120
+ "outputs": [
121
+ {
122
+ "internalType": "bytes12",
123
+ "name": "_hashSeed",
124
+ "type": "bytes12"
125
+ }
126
+ ],
127
+ "stateMutability": "view",
128
+ "type": "function"
129
+ },
130
+ {
131
+ "inputs": [
132
+ {
133
+ "internalType": "address",
134
+ "name": "_coreContract",
135
+ "type": "address"
136
+ },
137
+ {
138
+ "internalType": "uint256",
139
+ "name": "_tokenId",
140
+ "type": "uint256"
141
+ },
142
+ {
143
+ "internalType": "bytes12",
144
+ "name": "_hashSeed",
145
+ "type": "bytes12"
146
+ }
147
+ ],
148
+ "name": "preSetHashSeed",
149
+ "outputs": [],
150
+ "stateMutability": "nonpayable",
151
+ "type": "function"
152
+ },
153
+ {
154
+ "inputs": [
155
+ {
156
+ "internalType": "address",
157
+ "name": "_coreContract",
158
+ "type": "address"
159
+ },
160
+ {
161
+ "internalType": "uint256",
162
+ "name": "_projectId",
163
+ "type": "uint256"
164
+ }
165
+ ],
166
+ "name": "projectUsesHashSeedSetter",
167
+ "outputs": [
168
+ {
169
+ "internalType": "bool",
170
+ "name": "_usingHashSeedSetter",
171
+ "type": "bool"
172
+ }
173
+ ],
174
+ "stateMutability": "view",
175
+ "type": "function"
176
+ },
177
+ {
178
+ "inputs": [
179
+ {
180
+ "internalType": "address",
181
+ "name": "_coreContract",
182
+ "type": "address"
183
+ },
184
+ {
185
+ "internalType": "uint256",
186
+ "name": "_projectId",
187
+ "type": "uint256"
188
+ },
189
+ {
190
+ "internalType": "address",
191
+ "name": "_hashSeedSetterContract",
192
+ "type": "address"
193
+ }
194
+ ],
195
+ "name": "setHashSeedSetterContract",
196
+ "outputs": [],
197
+ "stateMutability": "nonpayable",
198
+ "type": "function"
199
+ },
200
+ {
201
+ "inputs": [
202
+ {
203
+ "internalType": "address",
204
+ "name": "_coreContract",
205
+ "type": "address"
206
+ },
207
+ {
208
+ "internalType": "uint256",
209
+ "name": "_projectId",
210
+ "type": "uint256"
211
+ }
212
+ ],
213
+ "name": "toggleProjectUseAssignedHashSeed",
214
+ "outputs": [],
215
+ "stateMutability": "nonpayable",
216
+ "type": "function"
217
+ }
218
+ ],
219
+ "bytecode": "0x",
220
+ "deployedBytecode": "0x",
221
+ "linkReferences": {},
222
+ "deployedLinkReferences": {}
223
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "IWETH",
4
- "sourceName": "contracts/interfaces/0.8.x/IWETH.sol",
4
+ "sourceName": "contracts/interfaces/v0.8.x/IWETH.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -3,8 +3,8 @@
3
3
  "contractName": "Address",
4
4
  "sourceName": "contracts/legacy/GenArt721CoreV1.sol",
5
5
  "abi": [],
6
- "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820a0ddf4348e40a9ffcd3859016add4d35847461f69bc906f9f94e6f87e8379f7c64736f6c63430005110032",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820a0ddf4348e40a9ffcd3859016add4d35847461f69bc906f9f94e6f87e8379f7c64736f6c63430005110032",
6
+ "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820718b010bc416a387ef9c93515ab53f15110a686fedb959ca6fd661845aea900f64736f6c63430005110032",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a72315820718b010bc416a387ef9c93515ab53f15110a686fedb959ca6fd661845aea900f64736f6c63430005110032",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -3,8 +3,8 @@
3
3
  "contractName": "Counters",
4
4
  "sourceName": "contracts/legacy/GenArt721CoreV1.sol",
5
5
  "abi": [],
6
- "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a7231582034d7b6b3eac7125c2e38d7a36e2f1db9de275659cc749c731d4cc319238ee2b864736f6c63430005110032",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a7231582034d7b6b3eac7125c2e38d7a36e2f1db9de275659cc749c731d4cc319238ee2b864736f6c63430005110032",
6
+ "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158208ff8e150b95b24af046928a2c5f2ff023f94f2e88bd06dfb2fe9247879de7dfd64736f6c63430005110032",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158208ff8e150b95b24af046928a2c5f2ff023f94f2e88bd06dfb2fe9247879de7dfd64736f6c63430005110032",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -418,8 +418,8 @@
418
418
  "type": "function"
419
419
  }
420
420
  ],
421
- "bytecode": "0x60806040523480156200001157600080fd5b506040516200157038038062001570833981810160405260408110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b5060405250620001bc91506301ffc9a760e01b90506001600160e01b036200024116565b620001d76380ac58cd60e01b6001600160e01b036200024116565b620001f263780e9d6360e01b6001600160e01b036200024116565b815162000207906009906020850190620002c6565b5080516200021d90600a906020840190620002c6565b5062000239635b5e139f60e01b6001600160e01b036200024116565b50506200036b565b6001600160e01b03198082161415620002a1576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200030957805160ff191683800117855562000339565b8280016001018555821562000339579182015b82811115620003395782518255916020019190600101906200031c565b50620003479291506200034b565b5090565b6200036891905b8082111562000347576000815560010162000352565b90565b6111f5806200037b6000396000f3fe608060405234801561001057600080fd5b50600436106100d55760003560e01c806342842e0e1161008757806342842e0e146102755780634f6ccce7146102ab5780636352211e146102c857806370a08231146102e557806395d89b411461030b578063a22cb46514610313578063b88d4fde14610341578063e985e9c514610407576100d5565b806301ffc9a7146100da57806306fdde0314610115578063081812fc14610192578063095ea7b3146101cb57806318160ddd146101f957806323b872dd146102135780632f745c5914610249575b600080fd5b610101600480360360208110156100f057600080fd5b50356001600160e01b031916610435565b604080519115158252519081900360200190f35b61011d610454565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015757818101518382015260200161013f565b50505050905090810190601f1680156101845780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101af600480360360208110156101a857600080fd5b50356104eb565b604080516001600160a01b039092168252519081900360200190f35b6101f7600480360360408110156101e157600080fd5b506001600160a01b03813516906020013561054d565b005b61020161065e565b60408051918252519081900360200190f35b6101f76004803603606081101561022957600080fd5b506001600160a01b03813581169160208101359091169060400135610664565b6102016004803603604081101561025f57600080fd5b506001600160a01b0381351690602001356106b9565b6101f76004803603606081101561028b57600080fd5b506001600160a01b03813581169160208101359091169060400135610738565b610201600480360360208110156102c157600080fd5b5035610753565b6101af600480360360208110156102de57600080fd5b50356107b9565b610201600480360360208110156102fb57600080fd5b50356001600160a01b0316610813565b61011d61087b565b6101f76004803603604081101561032957600080fd5b506001600160a01b03813516906020013515156108dc565b6101f76004803603608081101561035757600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561039257600080fd5b8201836020820111156103a457600080fd5b803590602001918460018302840111640100000000831117156103c657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109a4945050505050565b6101016004803603604081101561041d57600080fd5b506001600160a01b03813581169160200135166109fc565b6001600160e01b03191660009081526020819052604090205460ff1690565b60098054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104e05780601f106104b5576101008083540402835291602001916104e0565b820191906000526020600020905b8154815290600101906020018083116104c357829003601f168201915b505050505090505b90565b60006104f682610a2a565b6105315760405162461bcd60e51b815260040180806020018281038252602c8152602001806110ee602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b6000610558826107b9565b9050806001600160a01b0316836001600160a01b031614156105ab5760405162461bcd60e51b81526004018080602001828103825260218152602001806111436021913960400191505060405180910390fd5b336001600160a01b03821614806105c757506105c781336109fc565b6106025760405162461bcd60e51b81526004018080602001828103825260388152602001806110636038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60075490565b61066e3382610a47565b6106a95760405162461bcd60e51b81526004018080602001828103825260318152602001806111646031913960400191505060405180910390fd5b6106b4838383610aeb565b505050565b60006106c483610813565b82106107015760405162461bcd60e51b815260040180806020018281038252602b815260200180610fb6602b913960400191505060405180910390fd5b6001600160a01b038316600090815260056020526040902080548390811061072557fe5b9060005260206000200154905092915050565b6106b4838383604051806020016040528060008152506109a4565b600061075d61065e565b821061079a5760405162461bcd60e51b815260040180806020018281038252602c815260200180611195602c913960400191505060405180910390fd5b600782815481106107a757fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b03168061080d5760405162461bcd60e51b81526004018080602001828103825260298152602001806110c56029913960400191505060405180910390fd5b92915050565b60006001600160a01b03821661085a5760405162461bcd60e51b815260040180806020018281038252602a81526020018061109b602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061080d90610b0a565b600a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104e05780601f106104b5576101008083540402835291602001916104e0565b6001600160a01b038216331415610936576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6109af848484610664565b6109bb84848484610b0e565b6109f65760405162461bcd60e51b8152600401808060200182810382526032815260200180610fe16032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b6000610a5282610a2a565b610a8d5760405162461bcd60e51b815260040180806020018281038252602c815260200180611037602c913960400191505060405180910390fd5b6000610a98836107b9565b9050806001600160a01b0316846001600160a01b03161480610ad35750836001600160a01b0316610ac8846104eb565b6001600160a01b0316145b80610ae35750610ae381856109fc565b949350505050565b610af6838383610c41565b610b008382610d85565b6106b48282610e7a565b5490565b6000610b22846001600160a01b0316610eb8565b610b2e57506001610ae3565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610ba8578181015183820152602001610b90565b50505050905090810190601f168015610bd55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610bf757600080fd5b505af1158015610c0b573d6000803e3d6000fd5b505050506040513d6020811015610c2157600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b826001600160a01b0316610c54826107b9565b6001600160a01b031614610c995760405162461bcd60e51b815260040180806020018281038252602981526020018061111a6029913960400191505060405180910390fd5b6001600160a01b038216610cde5760405162461bcd60e51b81526004018080602001828103825260248152602001806110136024913960400191505060405180910390fd5b610ce781610ebe565b6001600160a01b0383166000908152600360205260409020610d0890610efb565b6001600160a01b0382166000908152600360205260409020610d2990610f12565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b038216600090815260056020526040812054610daf90600163ffffffff610f1b16565b600083815260066020526040902054909150808214610e4a576001600160a01b0384166000908152600560205260408120805484908110610dec57fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610e2a57fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b0384166000908152600560205260409020805490610e73906000198301610f78565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b3b151590565b6000818152600260205260409020546001600160a01b031615610ef857600081815260026020526040902080546001600160a01b03191690555b50565b8054610f0e90600163ffffffff610f1b16565b9055565b80546001019055565b600082821115610f72576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b8154818355818111156106b4576000838152602090206106b49181019083016104e891905b80821115610fb15760008155600101610f9d565b509056fe455243373231456e756d657261626c653a206f776e657220696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564455243373231456e756d657261626c653a20676c6f62616c20696e646578206f7574206f6620626f756e6473a265627a7a723158200ebf1d9f80e7ae3d4ffd40e3f015d3e76c0b1d0e37686255e4f3dcca5c28c3bd64736f6c63430005110032",
422
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d55760003560e01c806342842e0e1161008757806342842e0e146102755780634f6ccce7146102ab5780636352211e146102c857806370a08231146102e557806395d89b411461030b578063a22cb46514610313578063b88d4fde14610341578063e985e9c514610407576100d5565b806301ffc9a7146100da57806306fdde0314610115578063081812fc14610192578063095ea7b3146101cb57806318160ddd146101f957806323b872dd146102135780632f745c5914610249575b600080fd5b610101600480360360208110156100f057600080fd5b50356001600160e01b031916610435565b604080519115158252519081900360200190f35b61011d610454565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015757818101518382015260200161013f565b50505050905090810190601f1680156101845780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101af600480360360208110156101a857600080fd5b50356104eb565b604080516001600160a01b039092168252519081900360200190f35b6101f7600480360360408110156101e157600080fd5b506001600160a01b03813516906020013561054d565b005b61020161065e565b60408051918252519081900360200190f35b6101f76004803603606081101561022957600080fd5b506001600160a01b03813581169160208101359091169060400135610664565b6102016004803603604081101561025f57600080fd5b506001600160a01b0381351690602001356106b9565b6101f76004803603606081101561028b57600080fd5b506001600160a01b03813581169160208101359091169060400135610738565b610201600480360360208110156102c157600080fd5b5035610753565b6101af600480360360208110156102de57600080fd5b50356107b9565b610201600480360360208110156102fb57600080fd5b50356001600160a01b0316610813565b61011d61087b565b6101f76004803603604081101561032957600080fd5b506001600160a01b03813516906020013515156108dc565b6101f76004803603608081101561035757600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561039257600080fd5b8201836020820111156103a457600080fd5b803590602001918460018302840111640100000000831117156103c657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109a4945050505050565b6101016004803603604081101561041d57600080fd5b506001600160a01b03813581169160200135166109fc565b6001600160e01b03191660009081526020819052604090205460ff1690565b60098054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104e05780601f106104b5576101008083540402835291602001916104e0565b820191906000526020600020905b8154815290600101906020018083116104c357829003601f168201915b505050505090505b90565b60006104f682610a2a565b6105315760405162461bcd60e51b815260040180806020018281038252602c8152602001806110ee602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b6000610558826107b9565b9050806001600160a01b0316836001600160a01b031614156105ab5760405162461bcd60e51b81526004018080602001828103825260218152602001806111436021913960400191505060405180910390fd5b336001600160a01b03821614806105c757506105c781336109fc565b6106025760405162461bcd60e51b81526004018080602001828103825260388152602001806110636038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60075490565b61066e3382610a47565b6106a95760405162461bcd60e51b81526004018080602001828103825260318152602001806111646031913960400191505060405180910390fd5b6106b4838383610aeb565b505050565b60006106c483610813565b82106107015760405162461bcd60e51b815260040180806020018281038252602b815260200180610fb6602b913960400191505060405180910390fd5b6001600160a01b038316600090815260056020526040902080548390811061072557fe5b9060005260206000200154905092915050565b6106b4838383604051806020016040528060008152506109a4565b600061075d61065e565b821061079a5760405162461bcd60e51b815260040180806020018281038252602c815260200180611195602c913960400191505060405180910390fd5b600782815481106107a757fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b03168061080d5760405162461bcd60e51b81526004018080602001828103825260298152602001806110c56029913960400191505060405180910390fd5b92915050565b60006001600160a01b03821661085a5760405162461bcd60e51b815260040180806020018281038252602a81526020018061109b602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061080d90610b0a565b600a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104e05780601f106104b5576101008083540402835291602001916104e0565b6001600160a01b038216331415610936576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6109af848484610664565b6109bb84848484610b0e565b6109f65760405162461bcd60e51b8152600401808060200182810382526032815260200180610fe16032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b6000610a5282610a2a565b610a8d5760405162461bcd60e51b815260040180806020018281038252602c815260200180611037602c913960400191505060405180910390fd5b6000610a98836107b9565b9050806001600160a01b0316846001600160a01b03161480610ad35750836001600160a01b0316610ac8846104eb565b6001600160a01b0316145b80610ae35750610ae381856109fc565b949350505050565b610af6838383610c41565b610b008382610d85565b6106b48282610e7a565b5490565b6000610b22846001600160a01b0316610eb8565b610b2e57506001610ae3565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610ba8578181015183820152602001610b90565b50505050905090810190601f168015610bd55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610bf757600080fd5b505af1158015610c0b573d6000803e3d6000fd5b505050506040513d6020811015610c2157600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b826001600160a01b0316610c54826107b9565b6001600160a01b031614610c995760405162461bcd60e51b815260040180806020018281038252602981526020018061111a6029913960400191505060405180910390fd5b6001600160a01b038216610cde5760405162461bcd60e51b81526004018080602001828103825260248152602001806110136024913960400191505060405180910390fd5b610ce781610ebe565b6001600160a01b0383166000908152600360205260409020610d0890610efb565b6001600160a01b0382166000908152600360205260409020610d2990610f12565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b038216600090815260056020526040812054610daf90600163ffffffff610f1b16565b600083815260066020526040902054909150808214610e4a576001600160a01b0384166000908152600560205260408120805484908110610dec57fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610e2a57fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b0384166000908152600560205260409020805490610e73906000198301610f78565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b3b151590565b6000818152600260205260409020546001600160a01b031615610ef857600081815260026020526040902080546001600160a01b03191690555b50565b8054610f0e90600163ffffffff610f1b16565b9055565b80546001019055565b600082821115610f72576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b8154818355818111156106b4576000838152602090206106b49181019083016104e891905b80821115610fb15760008155600101610f9d565b509056fe455243373231456e756d657261626c653a206f776e657220696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564455243373231456e756d657261626c653a20676c6f62616c20696e646578206f7574206f6620626f756e6473a265627a7a723158200ebf1d9f80e7ae3d4ffd40e3f015d3e76c0b1d0e37686255e4f3dcca5c28c3bd64736f6c63430005110032",
421
+ "bytecode": "0x60806040523480156200001157600080fd5b506040516200157038038062001570833981810160405260408110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b5060405250620001bc91506301ffc9a760e01b90506001600160e01b036200024116565b620001d76380ac58cd60e01b6001600160e01b036200024116565b620001f263780e9d6360e01b6001600160e01b036200024116565b815162000207906009906020850190620002c6565b5080516200021d90600a906020840190620002c6565b5062000239635b5e139f60e01b6001600160e01b036200024116565b50506200036b565b6001600160e01b03198082161415620002a1576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200030957805160ff191683800117855562000339565b8280016001018555821562000339579182015b82811115620003395782518255916020019190600101906200031c565b50620003479291506200034b565b5090565b6200036891905b8082111562000347576000815560010162000352565b90565b6111f5806200037b6000396000f3fe608060405234801561001057600080fd5b50600436106100d55760003560e01c806342842e0e1161008757806342842e0e146102755780634f6ccce7146102ab5780636352211e146102c857806370a08231146102e557806395d89b411461030b578063a22cb46514610313578063b88d4fde14610341578063e985e9c514610407576100d5565b806301ffc9a7146100da57806306fdde0314610115578063081812fc14610192578063095ea7b3146101cb57806318160ddd146101f957806323b872dd146102135780632f745c5914610249575b600080fd5b610101600480360360208110156100f057600080fd5b50356001600160e01b031916610435565b604080519115158252519081900360200190f35b61011d610454565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015757818101518382015260200161013f565b50505050905090810190601f1680156101845780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101af600480360360208110156101a857600080fd5b50356104eb565b604080516001600160a01b039092168252519081900360200190f35b6101f7600480360360408110156101e157600080fd5b506001600160a01b03813516906020013561054d565b005b61020161065e565b60408051918252519081900360200190f35b6101f76004803603606081101561022957600080fd5b506001600160a01b03813581169160208101359091169060400135610664565b6102016004803603604081101561025f57600080fd5b506001600160a01b0381351690602001356106b9565b6101f76004803603606081101561028b57600080fd5b506001600160a01b03813581169160208101359091169060400135610738565b610201600480360360208110156102c157600080fd5b5035610753565b6101af600480360360208110156102de57600080fd5b50356107b9565b610201600480360360208110156102fb57600080fd5b50356001600160a01b0316610813565b61011d61087b565b6101f76004803603604081101561032957600080fd5b506001600160a01b03813516906020013515156108dc565b6101f76004803603608081101561035757600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561039257600080fd5b8201836020820111156103a457600080fd5b803590602001918460018302840111640100000000831117156103c657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109a4945050505050565b6101016004803603604081101561041d57600080fd5b506001600160a01b03813581169160200135166109fc565b6001600160e01b03191660009081526020819052604090205460ff1690565b60098054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104e05780601f106104b5576101008083540402835291602001916104e0565b820191906000526020600020905b8154815290600101906020018083116104c357829003601f168201915b505050505090505b90565b60006104f682610a2a565b6105315760405162461bcd60e51b815260040180806020018281038252602c8152602001806110ee602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b6000610558826107b9565b9050806001600160a01b0316836001600160a01b031614156105ab5760405162461bcd60e51b81526004018080602001828103825260218152602001806111436021913960400191505060405180910390fd5b336001600160a01b03821614806105c757506105c781336109fc565b6106025760405162461bcd60e51b81526004018080602001828103825260388152602001806110636038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60075490565b61066e3382610a47565b6106a95760405162461bcd60e51b81526004018080602001828103825260318152602001806111646031913960400191505060405180910390fd5b6106b4838383610aeb565b505050565b60006106c483610813565b82106107015760405162461bcd60e51b815260040180806020018281038252602b815260200180610fb6602b913960400191505060405180910390fd5b6001600160a01b038316600090815260056020526040902080548390811061072557fe5b9060005260206000200154905092915050565b6106b4838383604051806020016040528060008152506109a4565b600061075d61065e565b821061079a5760405162461bcd60e51b815260040180806020018281038252602c815260200180611195602c913960400191505060405180910390fd5b600782815481106107a757fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b03168061080d5760405162461bcd60e51b81526004018080602001828103825260298152602001806110c56029913960400191505060405180910390fd5b92915050565b60006001600160a01b03821661085a5760405162461bcd60e51b815260040180806020018281038252602a81526020018061109b602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061080d90610b0a565b600a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104e05780601f106104b5576101008083540402835291602001916104e0565b6001600160a01b038216331415610936576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6109af848484610664565b6109bb84848484610b0e565b6109f65760405162461bcd60e51b8152600401808060200182810382526032815260200180610fe16032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b6000610a5282610a2a565b610a8d5760405162461bcd60e51b815260040180806020018281038252602c815260200180611037602c913960400191505060405180910390fd5b6000610a98836107b9565b9050806001600160a01b0316846001600160a01b03161480610ad35750836001600160a01b0316610ac8846104eb565b6001600160a01b0316145b80610ae35750610ae381856109fc565b949350505050565b610af6838383610c41565b610b008382610d85565b6106b48282610e7a565b5490565b6000610b22846001600160a01b0316610eb8565b610b2e57506001610ae3565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610ba8578181015183820152602001610b90565b50505050905090810190601f168015610bd55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610bf757600080fd5b505af1158015610c0b573d6000803e3d6000fd5b505050506040513d6020811015610c2157600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b826001600160a01b0316610c54826107b9565b6001600160a01b031614610c995760405162461bcd60e51b815260040180806020018281038252602981526020018061111a6029913960400191505060405180910390fd5b6001600160a01b038216610cde5760405162461bcd60e51b81526004018080602001828103825260248152602001806110136024913960400191505060405180910390fd5b610ce781610ebe565b6001600160a01b0383166000908152600360205260409020610d0890610efb565b6001600160a01b0382166000908152600360205260409020610d2990610f12565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b038216600090815260056020526040812054610daf90600163ffffffff610f1b16565b600083815260066020526040902054909150808214610e4a576001600160a01b0384166000908152600560205260408120805484908110610dec57fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610e2a57fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b0384166000908152600560205260409020805490610e73906000198301610f78565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b3b151590565b6000818152600260205260409020546001600160a01b031615610ef857600081815260026020526040902080546001600160a01b03191690555b50565b8054610f0e90600163ffffffff610f1b16565b9055565b80546001019055565b600082821115610f72576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b8154818355818111156106b4576000838152602090206106b49181019083016104e891905b80821115610fb15760008155600101610f9d565b509056fe455243373231456e756d657261626c653a206f776e657220696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564455243373231456e756d657261626c653a20676c6f62616c20696e646578206f7574206f6620626f756e6473a265627a7a72315820a092c7af58ff86609949a9fae8f1a276d1819ad20cf896c979a4ed7eb399a09864736f6c63430005110032",
422
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d55760003560e01c806342842e0e1161008757806342842e0e146102755780634f6ccce7146102ab5780636352211e146102c857806370a08231146102e557806395d89b411461030b578063a22cb46514610313578063b88d4fde14610341578063e985e9c514610407576100d5565b806301ffc9a7146100da57806306fdde0314610115578063081812fc14610192578063095ea7b3146101cb57806318160ddd146101f957806323b872dd146102135780632f745c5914610249575b600080fd5b610101600480360360208110156100f057600080fd5b50356001600160e01b031916610435565b604080519115158252519081900360200190f35b61011d610454565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015757818101518382015260200161013f565b50505050905090810190601f1680156101845780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101af600480360360208110156101a857600080fd5b50356104eb565b604080516001600160a01b039092168252519081900360200190f35b6101f7600480360360408110156101e157600080fd5b506001600160a01b03813516906020013561054d565b005b61020161065e565b60408051918252519081900360200190f35b6101f76004803603606081101561022957600080fd5b506001600160a01b03813581169160208101359091169060400135610664565b6102016004803603604081101561025f57600080fd5b506001600160a01b0381351690602001356106b9565b6101f76004803603606081101561028b57600080fd5b506001600160a01b03813581169160208101359091169060400135610738565b610201600480360360208110156102c157600080fd5b5035610753565b6101af600480360360208110156102de57600080fd5b50356107b9565b610201600480360360208110156102fb57600080fd5b50356001600160a01b0316610813565b61011d61087b565b6101f76004803603604081101561032957600080fd5b506001600160a01b03813516906020013515156108dc565b6101f76004803603608081101561035757600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561039257600080fd5b8201836020820111156103a457600080fd5b803590602001918460018302840111640100000000831117156103c657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109a4945050505050565b6101016004803603604081101561041d57600080fd5b506001600160a01b03813581169160200135166109fc565b6001600160e01b03191660009081526020819052604090205460ff1690565b60098054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104e05780601f106104b5576101008083540402835291602001916104e0565b820191906000526020600020905b8154815290600101906020018083116104c357829003601f168201915b505050505090505b90565b60006104f682610a2a565b6105315760405162461bcd60e51b815260040180806020018281038252602c8152602001806110ee602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b6000610558826107b9565b9050806001600160a01b0316836001600160a01b031614156105ab5760405162461bcd60e51b81526004018080602001828103825260218152602001806111436021913960400191505060405180910390fd5b336001600160a01b03821614806105c757506105c781336109fc565b6106025760405162461bcd60e51b81526004018080602001828103825260388152602001806110636038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60075490565b61066e3382610a47565b6106a95760405162461bcd60e51b81526004018080602001828103825260318152602001806111646031913960400191505060405180910390fd5b6106b4838383610aeb565b505050565b60006106c483610813565b82106107015760405162461bcd60e51b815260040180806020018281038252602b815260200180610fb6602b913960400191505060405180910390fd5b6001600160a01b038316600090815260056020526040902080548390811061072557fe5b9060005260206000200154905092915050565b6106b4838383604051806020016040528060008152506109a4565b600061075d61065e565b821061079a5760405162461bcd60e51b815260040180806020018281038252602c815260200180611195602c913960400191505060405180910390fd5b600782815481106107a757fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b03168061080d5760405162461bcd60e51b81526004018080602001828103825260298152602001806110c56029913960400191505060405180910390fd5b92915050565b60006001600160a01b03821661085a5760405162461bcd60e51b815260040180806020018281038252602a81526020018061109b602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061080d90610b0a565b600a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156104e05780601f106104b5576101008083540402835291602001916104e0565b6001600160a01b038216331415610936576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6109af848484610664565b6109bb84848484610b0e565b6109f65760405162461bcd60e51b8152600401808060200182810382526032815260200180610fe16032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b6000610a5282610a2a565b610a8d5760405162461bcd60e51b815260040180806020018281038252602c815260200180611037602c913960400191505060405180910390fd5b6000610a98836107b9565b9050806001600160a01b0316846001600160a01b03161480610ad35750836001600160a01b0316610ac8846104eb565b6001600160a01b0316145b80610ae35750610ae381856109fc565b949350505050565b610af6838383610c41565b610b008382610d85565b6106b48282610e7a565b5490565b6000610b22846001600160a01b0316610eb8565b610b2e57506001610ae3565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610ba8578181015183820152602001610b90565b50505050905090810190601f168015610bd55780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610bf757600080fd5b505af1158015610c0b573d6000803e3d6000fd5b505050506040513d6020811015610c2157600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b826001600160a01b0316610c54826107b9565b6001600160a01b031614610c995760405162461bcd60e51b815260040180806020018281038252602981526020018061111a6029913960400191505060405180910390fd5b6001600160a01b038216610cde5760405162461bcd60e51b81526004018080602001828103825260248152602001806110136024913960400191505060405180910390fd5b610ce781610ebe565b6001600160a01b0383166000908152600360205260409020610d0890610efb565b6001600160a01b0382166000908152600360205260409020610d2990610f12565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b038216600090815260056020526040812054610daf90600163ffffffff610f1b16565b600083815260066020526040902054909150808214610e4a576001600160a01b0384166000908152600560205260408120805484908110610dec57fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610e2a57fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b0384166000908152600560205260409020805490610e73906000198301610f78565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b3b151590565b6000818152600260205260409020546001600160a01b031615610ef857600081815260026020526040902080546001600160a01b03191690555b50565b8054610f0e90600163ffffffff610f1b16565b9055565b80546001019055565b600082821115610f72576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b8154818355818111156106b4576000838152602090206106b49181019083016104e891905b80821115610fb15760008155600101610f9d565b509056fe455243373231456e756d657261626c653a206f776e657220696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564455243373231456e756d657261626c653a20676c6f62616c20696e646578206f7574206f6620626f756e6473a265627a7a72315820a092c7af58ff86609949a9fae8f1a276d1819ad20cf896c979a4ed7eb399a09864736f6c63430005110032",
423
423
  "linkReferences": {},
424
424
  "deployedLinkReferences": {}
425
425
  }
@@ -315,8 +315,8 @@
315
315
  "type": "function"
316
316
  }
317
317
  ],
318
- "bytecode": "0x608060405234801561001057600080fd5b5061002a6301ffc9a760e01b6001600160e01b0361004816565b6100436380ac58cd60e01b6001600160e01b0361004816565b6100cc565b6001600160e01b031980821614156100a7576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b610d1f806100db6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103a9565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104ba565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561050f565b6100fb600480360360208110156101c757600080fd5b503561052a565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610584565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105ec565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106b4945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b038135811691602001351661070c565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103528261073a565b61038d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610c44602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b48261052a565b9050806001600160a01b0316836001600160a01b031614156104075760405162461bcd60e51b8152600401808060200182810382526021815260200180610c996021913960400191505060405180910390fd5b336001600160a01b03821614806104235750610423813361070c565b61045e5760405162461bcd60e51b8152600401808060200182810382526038815260200180610bb96038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104c43382610757565b6104ff5760405162461bcd60e51b8152600401808060200182810382526031815260200180610cba6031913960400191505060405180910390fd5b61050a8383836107fb565b505050565b61050a838383604051806020016040528060008152506106b4565b6000818152600160205260408120546001600160a01b03168061057e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610c1b6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105cb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610bf1602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061057e9061093f565b6001600160a01b038216331415610646576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106bf8484846104ba565b6106cb84848484610943565b6107065760405162461bcd60e51b8152600401808060200182810382526032815260200180610b376032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107628261073a565b61079d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610b8d602c913960400191505060405180910390fd5b60006107a88361052a565b9050806001600160a01b0316846001600160a01b031614806107e35750836001600160a01b03166107d884610347565b6001600160a01b0316145b806107f357506107f3818561070c565b949350505050565b826001600160a01b031661080e8261052a565b6001600160a01b0316146108535760405162461bcd60e51b8152600401808060200182810382526029815260200180610c706029913960400191505060405180910390fd5b6001600160a01b0382166108985760405162461bcd60e51b8152600401808060200182810382526024815260200180610b696024913960400191505060405180910390fd5b6108a181610a76565b6001600160a01b03831660009081526003602052604090206108c290610ab3565b6001600160a01b03821660009081526003602052604090206108e390610aca565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b6000610957846001600160a01b0316610ad3565b610963575060016107f3565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156109dd5781810151838201526020016109c5565b50505050905090810190601f168015610a0a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a2c57600080fd5b505af1158015610a40573d6000803e3d6000fd5b505050506040513d6020811015610a5657600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b031615610ab057600081815260026020526040902080546001600160a01b03191690555b50565b8054610ac690600163ffffffff610ad916565b9055565b80546001019055565b3b151590565b600082821115610b30576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820c0ffac901aef9ea1c9ee5addd5068a1e8a82129a7ea27e515929f2ef31ca17b564736f6c63430005110032",
319
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103a9565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104ba565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561050f565b6100fb600480360360208110156101c757600080fd5b503561052a565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610584565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105ec565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106b4945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b038135811691602001351661070c565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103528261073a565b61038d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610c44602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b48261052a565b9050806001600160a01b0316836001600160a01b031614156104075760405162461bcd60e51b8152600401808060200182810382526021815260200180610c996021913960400191505060405180910390fd5b336001600160a01b03821614806104235750610423813361070c565b61045e5760405162461bcd60e51b8152600401808060200182810382526038815260200180610bb96038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104c43382610757565b6104ff5760405162461bcd60e51b8152600401808060200182810382526031815260200180610cba6031913960400191505060405180910390fd5b61050a8383836107fb565b505050565b61050a838383604051806020016040528060008152506106b4565b6000818152600160205260408120546001600160a01b03168061057e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610c1b6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105cb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610bf1602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061057e9061093f565b6001600160a01b038216331415610646576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106bf8484846104ba565b6106cb84848484610943565b6107065760405162461bcd60e51b8152600401808060200182810382526032815260200180610b376032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107628261073a565b61079d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610b8d602c913960400191505060405180910390fd5b60006107a88361052a565b9050806001600160a01b0316846001600160a01b031614806107e35750836001600160a01b03166107d884610347565b6001600160a01b0316145b806107f357506107f3818561070c565b949350505050565b826001600160a01b031661080e8261052a565b6001600160a01b0316146108535760405162461bcd60e51b8152600401808060200182810382526029815260200180610c706029913960400191505060405180910390fd5b6001600160a01b0382166108985760405162461bcd60e51b8152600401808060200182810382526024815260200180610b696024913960400191505060405180910390fd5b6108a181610a76565b6001600160a01b03831660009081526003602052604090206108c290610ab3565b6001600160a01b03821660009081526003602052604090206108e390610aca565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b6000610957846001600160a01b0316610ad3565b610963575060016107f3565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156109dd5781810151838201526020016109c5565b50505050905090810190601f168015610a0a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a2c57600080fd5b505af1158015610a40573d6000803e3d6000fd5b505050506040513d6020811015610a5657600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b031615610ab057600081815260026020526040902080546001600160a01b03191690555b50565b8054610ac690600163ffffffff610ad916565b9055565b80546001019055565b3b151590565b600082821115610b30576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a72315820c0ffac901aef9ea1c9ee5addd5068a1e8a82129a7ea27e515929f2ef31ca17b564736f6c63430005110032",
318
+ "bytecode": "0x608060405234801561001057600080fd5b5061002a6301ffc9a760e01b6001600160e01b0361004816565b6100436380ac58cd60e01b6001600160e01b0361004816565b6100cc565b6001600160e01b031980821614156100a7576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b610d1f806100db6000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103a9565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104ba565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561050f565b6100fb600480360360208110156101c757600080fd5b503561052a565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610584565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105ec565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106b4945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b038135811691602001351661070c565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103528261073a565b61038d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610c44602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b48261052a565b9050806001600160a01b0316836001600160a01b031614156104075760405162461bcd60e51b8152600401808060200182810382526021815260200180610c996021913960400191505060405180910390fd5b336001600160a01b03821614806104235750610423813361070c565b61045e5760405162461bcd60e51b8152600401808060200182810382526038815260200180610bb96038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104c43382610757565b6104ff5760405162461bcd60e51b8152600401808060200182810382526031815260200180610cba6031913960400191505060405180910390fd5b61050a8383836107fb565b505050565b61050a838383604051806020016040528060008152506106b4565b6000818152600160205260408120546001600160a01b03168061057e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610c1b6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105cb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610bf1602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061057e9061093f565b6001600160a01b038216331415610646576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106bf8484846104ba565b6106cb84848484610943565b6107065760405162461bcd60e51b8152600401808060200182810382526032815260200180610b376032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107628261073a565b61079d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610b8d602c913960400191505060405180910390fd5b60006107a88361052a565b9050806001600160a01b0316846001600160a01b031614806107e35750836001600160a01b03166107d884610347565b6001600160a01b0316145b806107f357506107f3818561070c565b949350505050565b826001600160a01b031661080e8261052a565b6001600160a01b0316146108535760405162461bcd60e51b8152600401808060200182810382526029815260200180610c706029913960400191505060405180910390fd5b6001600160a01b0382166108985760405162461bcd60e51b8152600401808060200182810382526024815260200180610b696024913960400191505060405180910390fd5b6108a181610a76565b6001600160a01b03831660009081526003602052604090206108c290610ab3565b6001600160a01b03821660009081526003602052604090206108e390610aca565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b6000610957846001600160a01b0316610ad3565b610963575060016107f3565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156109dd5781810151838201526020016109c5565b50505050905090810190601f168015610a0a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a2c57600080fd5b505af1158015610a40573d6000803e3d6000fd5b505050506040513d6020811015610a5657600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b031615610ab057600081815260026020526040902080546001600160a01b03191690555b50565b8054610ac690600163ffffffff610ad916565b9055565b80546001019055565b3b151590565b600082821115610b30576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a723158204d00a3602e8413765eee4ca6b6f47bd066eca17ad3056bda3fdeb8fd818879b964736f6c63430005110032",
319
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009e5760003560e01c80636352211e116100665780636352211e146101b157806370a08231146101ce578063a22cb46514610206578063b88d4fde14610234578063e985e9c5146102fa5761009e565b806301ffc9a7146100a3578063081812fc146100de578063095ea7b31461011757806323b872dd1461014557806342842e0e1461017b575b600080fd5b6100ca600480360360208110156100b957600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b6100fb600480360360208110156100f457600080fd5b5035610347565b604080516001600160a01b039092168252519081900360200190f35b6101436004803603604081101561012d57600080fd5b506001600160a01b0381351690602001356103a9565b005b6101436004803603606081101561015b57600080fd5b506001600160a01b038135811691602081013590911690604001356104ba565b6101436004803603606081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040013561050f565b6100fb600480360360208110156101c757600080fd5b503561052a565b6101f4600480360360208110156101e457600080fd5b50356001600160a01b0316610584565b60408051918252519081900360200190f35b6101436004803603604081101561021c57600080fd5b506001600160a01b03813516906020013515156105ec565b6101436004803603608081101561024a57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561028557600080fd5b82018360208201111561029757600080fd5b803590602001918460018302840111640100000000831117156102b957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106b4945050505050565b6100ca6004803603604081101561031057600080fd5b506001600160a01b038135811691602001351661070c565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103528261073a565b61038d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610c44602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b60006103b48261052a565b9050806001600160a01b0316836001600160a01b031614156104075760405162461bcd60e51b8152600401808060200182810382526021815260200180610c996021913960400191505060405180910390fd5b336001600160a01b03821614806104235750610423813361070c565b61045e5760405162461bcd60e51b8152600401808060200182810382526038815260200180610bb96038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6104c43382610757565b6104ff5760405162461bcd60e51b8152600401808060200182810382526031815260200180610cba6031913960400191505060405180910390fd5b61050a8383836107fb565b505050565b61050a838383604051806020016040528060008152506106b4565b6000818152600160205260408120546001600160a01b03168061057e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610c1b6029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166105cb5760405162461bcd60e51b815260040180806020018281038252602a815260200180610bf1602a913960400191505060405180910390fd5b6001600160a01b038216600090815260036020526040902061057e9061093f565b6001600160a01b038216331415610646576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b6106bf8484846104ba565b6106cb84848484610943565b6107065760405162461bcd60e51b8152600401808060200182810382526032815260200180610b376032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006107628261073a565b61079d5760405162461bcd60e51b815260040180806020018281038252602c815260200180610b8d602c913960400191505060405180910390fd5b60006107a88361052a565b9050806001600160a01b0316846001600160a01b031614806107e35750836001600160a01b03166107d884610347565b6001600160a01b0316145b806107f357506107f3818561070c565b949350505050565b826001600160a01b031661080e8261052a565b6001600160a01b0316146108535760405162461bcd60e51b8152600401808060200182810382526029815260200180610c706029913960400191505060405180910390fd5b6001600160a01b0382166108985760405162461bcd60e51b8152600401808060200182810382526024815260200180610b696024913960400191505060405180910390fd5b6108a181610a76565b6001600160a01b03831660009081526003602052604090206108c290610ab3565b6001600160a01b03821660009081526003602052604090206108e390610aca565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b5490565b6000610957846001600160a01b0316610ad3565b610963575060016107f3565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b838110156109dd5781810151838201526020016109c5565b50505050905090810190601f168015610a0a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a2c57600080fd5b505af1158015610a40573d6000803e3d6000fd5b505050506040513d6020811015610a5657600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b6000818152600260205260409020546001600160a01b031615610ab057600081815260026020526040902080546001600160a01b03191690555b50565b8054610ac690600163ffffffff610ad916565b9055565b80546001019055565b3b151590565b600082821115610b30576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a265627a7a723158204d00a3602e8413765eee4ca6b6f47bd066eca17ad3056bda3fdeb8fd818879b964736f6c63430005110032",
320
320
  "linkReferences": {},
321
321
  "deployedLinkReferences": {}
322
322
  }
@@ -377,8 +377,8 @@
377
377
  "type": "function"
378
378
  }
379
379
  ],
380
- "bytecode": "0x608060405234801561001057600080fd5b5061002a6301ffc9a760e01b6001600160e01b0361006116565b6100436380ac58cd60e01b6001600160e01b0361006116565b61005c63780e9d6360e01b6001600160e01b0361006116565b6100e5565b6001600160e01b031980821614156100c0576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b611063806100f46000396000f3fe608060405234801561001057600080fd5b50600436106100bf5760003560e01c806342842e0e1161007c57806342842e0e146101e25780634f6ccce7146102185780636352211e1461023557806370a0823114610252578063a22cb46514610278578063b88d4fde146102a6578063e985e9c51461036c576100bf565b806301ffc9a7146100c4578063081812fc146100ff578063095ea7b31461013857806318160ddd1461016657806323b872dd146101805780632f745c59146101b6575b600080fd5b6100eb600480360360208110156100da57600080fd5b50356001600160e01b03191661039a565b604080519115158252519081900360200190f35b61011c6004803603602081101561011557600080fd5b50356103b9565b604080516001600160a01b039092168252519081900360200190f35b6101646004803603604081101561014e57600080fd5b506001600160a01b03813516906020013561041b565b005b61016e61052c565b60408051918252519081900360200190f35b6101646004803603606081101561019657600080fd5b506001600160a01b03813581169160208101359091169060400135610533565b61016e600480360360408110156101cc57600080fd5b506001600160a01b038135169060200135610588565b610164600480360360608110156101f857600080fd5b506001600160a01b03813581169160208101359091169060400135610607565b61016e6004803603602081101561022e57600080fd5b5035610622565b61011c6004803603602081101561024b57600080fd5b5035610688565b61016e6004803603602081101561026857600080fd5b50356001600160a01b03166106e2565b6101646004803603604081101561028e57600080fd5b506001600160a01b038135169060200135151561074a565b610164600480360360808110156102bc57600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102f757600080fd5b82018360208201111561030957600080fd5b8035906020019184600183028401116401000000008311171561032b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610812945050505050565b6100eb6004803603604081101561038257600080fd5b506001600160a01b038135811691602001351661086a565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103c482610898565b6103ff5760405162461bcd60e51b815260040180806020018281038252602c815260200180610f5c602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b600061042682610688565b9050806001600160a01b0316836001600160a01b031614156104795760405162461bcd60e51b8152600401808060200182810382526021815260200180610fb16021913960400191505060405180910390fd5b336001600160a01b03821614806104955750610495813361086a565b6104d05760405162461bcd60e51b8152600401808060200182810382526038815260200180610ed16038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6007545b90565b61053d33826108b5565b6105785760405162461bcd60e51b8152600401808060200182810382526031815260200180610fd26031913960400191505060405180910390fd5b610583838383610959565b505050565b6000610593836106e2565b82106105d05760405162461bcd60e51b815260040180806020018281038252602b815260200180610e24602b913960400191505060405180910390fd5b6001600160a01b03831660009081526005602052604090208054839081106105f457fe5b9060005260206000200154905092915050565b61058383838360405180602001604052806000815250610812565b600061062c61052c565b82106106695760405162461bcd60e51b815260040180806020018281038252602c815260200180611003602c913960400191505060405180910390fd5b6007828154811061067657fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b0316806106dc5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f336029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166107295760405162461bcd60e51b815260040180806020018281038252602a815260200180610f09602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206106dc90610978565b6001600160a01b0382163314156107a4576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61081d848484610533565b6108298484848461097c565b6108645760405162461bcd60e51b8152600401808060200182810382526032815260200180610e4f6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006108c082610898565b6108fb5760405162461bcd60e51b815260040180806020018281038252602c815260200180610ea5602c913960400191505060405180910390fd5b600061090683610688565b9050806001600160a01b0316846001600160a01b031614806109415750836001600160a01b0316610936846103b9565b6001600160a01b0316145b806109515750610951818561086a565b949350505050565b610964838383610aaf565b61096e8382610bf3565b6105838282610ce8565b5490565b6000610990846001600160a01b0316610d26565b61099c57506001610951565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a165781810151838201526020016109fe565b50505050905090810190601f168015610a435780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a6557600080fd5b505af1158015610a79573d6000803e3d6000fd5b505050506040513d6020811015610a8f57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b826001600160a01b0316610ac282610688565b6001600160a01b031614610b075760405162461bcd60e51b8152600401808060200182810382526029815260200180610f886029913960400191505060405180910390fd5b6001600160a01b038216610b4c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610e816024913960400191505060405180910390fd5b610b5581610d2c565b6001600160a01b0383166000908152600360205260409020610b7690610d69565b6001600160a01b0382166000908152600360205260409020610b9790610d80565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b038216600090815260056020526040812054610c1d90600163ffffffff610d8916565b600083815260066020526040902054909150808214610cb8576001600160a01b0384166000908152600560205260408120805484908110610c5a57fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610c9857fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b0384166000908152600560205260409020805490610ce1906000198301610de6565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b3b151590565b6000818152600260205260409020546001600160a01b031615610d6657600081815260026020526040902080546001600160a01b03191690555b50565b8054610d7c90600163ffffffff610d8916565b9055565b80546001019055565b600082821115610de0576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b8154818355818111156105835760008381526020902061058391810190830161053091905b80821115610e1f5760008155600101610e0b565b509056fe455243373231456e756d657261626c653a206f776e657220696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564455243373231456e756d657261626c653a20676c6f62616c20696e646578206f7574206f6620626f756e6473a265627a7a7231582069b1552fba71ee6b384c837e8699610e301fbd96014b0db9fffd8b8ef393054464736f6c63430005110032",
381
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100bf5760003560e01c806342842e0e1161007c57806342842e0e146101e25780634f6ccce7146102185780636352211e1461023557806370a0823114610252578063a22cb46514610278578063b88d4fde146102a6578063e985e9c51461036c576100bf565b806301ffc9a7146100c4578063081812fc146100ff578063095ea7b31461013857806318160ddd1461016657806323b872dd146101805780632f745c59146101b6575b600080fd5b6100eb600480360360208110156100da57600080fd5b50356001600160e01b03191661039a565b604080519115158252519081900360200190f35b61011c6004803603602081101561011557600080fd5b50356103b9565b604080516001600160a01b039092168252519081900360200190f35b6101646004803603604081101561014e57600080fd5b506001600160a01b03813516906020013561041b565b005b61016e61052c565b60408051918252519081900360200190f35b6101646004803603606081101561019657600080fd5b506001600160a01b03813581169160208101359091169060400135610533565b61016e600480360360408110156101cc57600080fd5b506001600160a01b038135169060200135610588565b610164600480360360608110156101f857600080fd5b506001600160a01b03813581169160208101359091169060400135610607565b61016e6004803603602081101561022e57600080fd5b5035610622565b61011c6004803603602081101561024b57600080fd5b5035610688565b61016e6004803603602081101561026857600080fd5b50356001600160a01b03166106e2565b6101646004803603604081101561028e57600080fd5b506001600160a01b038135169060200135151561074a565b610164600480360360808110156102bc57600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102f757600080fd5b82018360208201111561030957600080fd5b8035906020019184600183028401116401000000008311171561032b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610812945050505050565b6100eb6004803603604081101561038257600080fd5b506001600160a01b038135811691602001351661086a565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103c482610898565b6103ff5760405162461bcd60e51b815260040180806020018281038252602c815260200180610f5c602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b600061042682610688565b9050806001600160a01b0316836001600160a01b031614156104795760405162461bcd60e51b8152600401808060200182810382526021815260200180610fb16021913960400191505060405180910390fd5b336001600160a01b03821614806104955750610495813361086a565b6104d05760405162461bcd60e51b8152600401808060200182810382526038815260200180610ed16038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6007545b90565b61053d33826108b5565b6105785760405162461bcd60e51b8152600401808060200182810382526031815260200180610fd26031913960400191505060405180910390fd5b610583838383610959565b505050565b6000610593836106e2565b82106105d05760405162461bcd60e51b815260040180806020018281038252602b815260200180610e24602b913960400191505060405180910390fd5b6001600160a01b03831660009081526005602052604090208054839081106105f457fe5b9060005260206000200154905092915050565b61058383838360405180602001604052806000815250610812565b600061062c61052c565b82106106695760405162461bcd60e51b815260040180806020018281038252602c815260200180611003602c913960400191505060405180910390fd5b6007828154811061067657fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b0316806106dc5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f336029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166107295760405162461bcd60e51b815260040180806020018281038252602a815260200180610f09602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206106dc90610978565b6001600160a01b0382163314156107a4576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61081d848484610533565b6108298484848461097c565b6108645760405162461bcd60e51b8152600401808060200182810382526032815260200180610e4f6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006108c082610898565b6108fb5760405162461bcd60e51b815260040180806020018281038252602c815260200180610ea5602c913960400191505060405180910390fd5b600061090683610688565b9050806001600160a01b0316846001600160a01b031614806109415750836001600160a01b0316610936846103b9565b6001600160a01b0316145b806109515750610951818561086a565b949350505050565b610964838383610aaf565b61096e8382610bf3565b6105838282610ce8565b5490565b6000610990846001600160a01b0316610d26565b61099c57506001610951565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a165781810151838201526020016109fe565b50505050905090810190601f168015610a435780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a6557600080fd5b505af1158015610a79573d6000803e3d6000fd5b505050506040513d6020811015610a8f57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b826001600160a01b0316610ac282610688565b6001600160a01b031614610b075760405162461bcd60e51b8152600401808060200182810382526029815260200180610f886029913960400191505060405180910390fd5b6001600160a01b038216610b4c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610e816024913960400191505060405180910390fd5b610b5581610d2c565b6001600160a01b0383166000908152600360205260409020610b7690610d69565b6001600160a01b0382166000908152600360205260409020610b9790610d80565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b038216600090815260056020526040812054610c1d90600163ffffffff610d8916565b600083815260066020526040902054909150808214610cb8576001600160a01b0384166000908152600560205260408120805484908110610c5a57fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610c9857fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b0384166000908152600560205260409020805490610ce1906000198301610de6565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b3b151590565b6000818152600260205260409020546001600160a01b031615610d6657600081815260026020526040902080546001600160a01b03191690555b50565b8054610d7c90600163ffffffff610d8916565b9055565b80546001019055565b600082821115610de0576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b8154818355818111156105835760008381526020902061058391810190830161053091905b80821115610e1f5760008155600101610e0b565b509056fe455243373231456e756d657261626c653a206f776e657220696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564455243373231456e756d657261626c653a20676c6f62616c20696e646578206f7574206f6620626f756e6473a265627a7a7231582069b1552fba71ee6b384c837e8699610e301fbd96014b0db9fffd8b8ef393054464736f6c63430005110032",
380
+ "bytecode": "0x608060405234801561001057600080fd5b5061002a6301ffc9a760e01b6001600160e01b0361006116565b6100436380ac58cd60e01b6001600160e01b0361006116565b61005c63780e9d6360e01b6001600160e01b0361006116565b6100e5565b6001600160e01b031980821614156100c0576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b611063806100f46000396000f3fe608060405234801561001057600080fd5b50600436106100bf5760003560e01c806342842e0e1161007c57806342842e0e146101e25780634f6ccce7146102185780636352211e1461023557806370a0823114610252578063a22cb46514610278578063b88d4fde146102a6578063e985e9c51461036c576100bf565b806301ffc9a7146100c4578063081812fc146100ff578063095ea7b31461013857806318160ddd1461016657806323b872dd146101805780632f745c59146101b6575b600080fd5b6100eb600480360360208110156100da57600080fd5b50356001600160e01b03191661039a565b604080519115158252519081900360200190f35b61011c6004803603602081101561011557600080fd5b50356103b9565b604080516001600160a01b039092168252519081900360200190f35b6101646004803603604081101561014e57600080fd5b506001600160a01b03813516906020013561041b565b005b61016e61052c565b60408051918252519081900360200190f35b6101646004803603606081101561019657600080fd5b506001600160a01b03813581169160208101359091169060400135610533565b61016e600480360360408110156101cc57600080fd5b506001600160a01b038135169060200135610588565b610164600480360360608110156101f857600080fd5b506001600160a01b03813581169160208101359091169060400135610607565b61016e6004803603602081101561022e57600080fd5b5035610622565b61011c6004803603602081101561024b57600080fd5b5035610688565b61016e6004803603602081101561026857600080fd5b50356001600160a01b03166106e2565b6101646004803603604081101561028e57600080fd5b506001600160a01b038135169060200135151561074a565b610164600480360360808110156102bc57600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102f757600080fd5b82018360208201111561030957600080fd5b8035906020019184600183028401116401000000008311171561032b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610812945050505050565b6100eb6004803603604081101561038257600080fd5b506001600160a01b038135811691602001351661086a565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103c482610898565b6103ff5760405162461bcd60e51b815260040180806020018281038252602c815260200180610f5c602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b600061042682610688565b9050806001600160a01b0316836001600160a01b031614156104795760405162461bcd60e51b8152600401808060200182810382526021815260200180610fb16021913960400191505060405180910390fd5b336001600160a01b03821614806104955750610495813361086a565b6104d05760405162461bcd60e51b8152600401808060200182810382526038815260200180610ed16038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6007545b90565b61053d33826108b5565b6105785760405162461bcd60e51b8152600401808060200182810382526031815260200180610fd26031913960400191505060405180910390fd5b610583838383610959565b505050565b6000610593836106e2565b82106105d05760405162461bcd60e51b815260040180806020018281038252602b815260200180610e24602b913960400191505060405180910390fd5b6001600160a01b03831660009081526005602052604090208054839081106105f457fe5b9060005260206000200154905092915050565b61058383838360405180602001604052806000815250610812565b600061062c61052c565b82106106695760405162461bcd60e51b815260040180806020018281038252602c815260200180611003602c913960400191505060405180910390fd5b6007828154811061067657fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b0316806106dc5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f336029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166107295760405162461bcd60e51b815260040180806020018281038252602a815260200180610f09602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206106dc90610978565b6001600160a01b0382163314156107a4576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61081d848484610533565b6108298484848461097c565b6108645760405162461bcd60e51b8152600401808060200182810382526032815260200180610e4f6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006108c082610898565b6108fb5760405162461bcd60e51b815260040180806020018281038252602c815260200180610ea5602c913960400191505060405180910390fd5b600061090683610688565b9050806001600160a01b0316846001600160a01b031614806109415750836001600160a01b0316610936846103b9565b6001600160a01b0316145b806109515750610951818561086a565b949350505050565b610964838383610aaf565b61096e8382610bf3565b6105838282610ce8565b5490565b6000610990846001600160a01b0316610d26565b61099c57506001610951565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a165781810151838201526020016109fe565b50505050905090810190601f168015610a435780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a6557600080fd5b505af1158015610a79573d6000803e3d6000fd5b505050506040513d6020811015610a8f57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b826001600160a01b0316610ac282610688565b6001600160a01b031614610b075760405162461bcd60e51b8152600401808060200182810382526029815260200180610f886029913960400191505060405180910390fd5b6001600160a01b038216610b4c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610e816024913960400191505060405180910390fd5b610b5581610d2c565b6001600160a01b0383166000908152600360205260409020610b7690610d69565b6001600160a01b0382166000908152600360205260409020610b9790610d80565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b038216600090815260056020526040812054610c1d90600163ffffffff610d8916565b600083815260066020526040902054909150808214610cb8576001600160a01b0384166000908152600560205260408120805484908110610c5a57fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610c9857fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b0384166000908152600560205260409020805490610ce1906000198301610de6565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b3b151590565b6000818152600260205260409020546001600160a01b031615610d6657600081815260026020526040902080546001600160a01b03191690555b50565b8054610d7c90600163ffffffff610d8916565b9055565b80546001019055565b600082821115610de0576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b8154818355818111156105835760008381526020902061058391810190830161053091905b80821115610e1f5760008155600101610e0b565b509056fe455243373231456e756d657261626c653a206f776e657220696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564455243373231456e756d657261626c653a20676c6f62616c20696e646578206f7574206f6620626f756e6473a265627a7a72315820ac1887a6474a99396e4fc43f08272699730b8e38a79e4cbd970da00b0a94dbce64736f6c63430005110032",
381
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100bf5760003560e01c806342842e0e1161007c57806342842e0e146101e25780634f6ccce7146102185780636352211e1461023557806370a0823114610252578063a22cb46514610278578063b88d4fde146102a6578063e985e9c51461036c576100bf565b806301ffc9a7146100c4578063081812fc146100ff578063095ea7b31461013857806318160ddd1461016657806323b872dd146101805780632f745c59146101b6575b600080fd5b6100eb600480360360208110156100da57600080fd5b50356001600160e01b03191661039a565b604080519115158252519081900360200190f35b61011c6004803603602081101561011557600080fd5b50356103b9565b604080516001600160a01b039092168252519081900360200190f35b6101646004803603604081101561014e57600080fd5b506001600160a01b03813516906020013561041b565b005b61016e61052c565b60408051918252519081900360200190f35b6101646004803603606081101561019657600080fd5b506001600160a01b03813581169160208101359091169060400135610533565b61016e600480360360408110156101cc57600080fd5b506001600160a01b038135169060200135610588565b610164600480360360608110156101f857600080fd5b506001600160a01b03813581169160208101359091169060400135610607565b61016e6004803603602081101561022e57600080fd5b5035610622565b61011c6004803603602081101561024b57600080fd5b5035610688565b61016e6004803603602081101561026857600080fd5b50356001600160a01b03166106e2565b6101646004803603604081101561028e57600080fd5b506001600160a01b038135169060200135151561074a565b610164600480360360808110156102bc57600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156102f757600080fd5b82018360208201111561030957600080fd5b8035906020019184600183028401116401000000008311171561032b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610812945050505050565b6100eb6004803603604081101561038257600080fd5b506001600160a01b038135811691602001351661086a565b6001600160e01b03191660009081526020819052604090205460ff1690565b60006103c482610898565b6103ff5760405162461bcd60e51b815260040180806020018281038252602c815260200180610f5c602c913960400191505060405180910390fd5b506000908152600260205260409020546001600160a01b031690565b600061042682610688565b9050806001600160a01b0316836001600160a01b031614156104795760405162461bcd60e51b8152600401808060200182810382526021815260200180610fb16021913960400191505060405180910390fd5b336001600160a01b03821614806104955750610495813361086a565b6104d05760405162461bcd60e51b8152600401808060200182810382526038815260200180610ed16038913960400191505060405180910390fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6007545b90565b61053d33826108b5565b6105785760405162461bcd60e51b8152600401808060200182810382526031815260200180610fd26031913960400191505060405180910390fd5b610583838383610959565b505050565b6000610593836106e2565b82106105d05760405162461bcd60e51b815260040180806020018281038252602b815260200180610e24602b913960400191505060405180910390fd5b6001600160a01b03831660009081526005602052604090208054839081106105f457fe5b9060005260206000200154905092915050565b61058383838360405180602001604052806000815250610812565b600061062c61052c565b82106106695760405162461bcd60e51b815260040180806020018281038252602c815260200180611003602c913960400191505060405180910390fd5b6007828154811061067657fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b0316806106dc5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f336029913960400191505060405180910390fd5b92915050565b60006001600160a01b0382166107295760405162461bcd60e51b815260040180806020018281038252602a815260200180610f09602a913960400191505060405180910390fd5b6001600160a01b03821660009081526003602052604090206106dc90610978565b6001600160a01b0382163314156107a4576040805162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b604482015290519081900360640190fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b61081d848484610533565b6108298484848461097c565b6108645760405162461bcd60e51b8152600401808060200182810382526032815260200180610e4f6032913960400191505060405180910390fd5b50505050565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b6000908152600160205260409020546001600160a01b0316151590565b60006108c082610898565b6108fb5760405162461bcd60e51b815260040180806020018281038252602c815260200180610ea5602c913960400191505060405180910390fd5b600061090683610688565b9050806001600160a01b0316846001600160a01b031614806109415750836001600160a01b0316610936846103b9565b6001600160a01b0316145b806109515750610951818561086a565b949350505050565b610964838383610aaf565b61096e8382610bf3565b6105838282610ce8565b5490565b6000610990846001600160a01b0316610d26565b61099c57506001610951565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610a165781810151838201526020016109fe565b50505050905090810190601f168015610a435780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610a6557600080fd5b505af1158015610a79573d6000803e3d6000fd5b505050506040513d6020811015610a8f57600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b826001600160a01b0316610ac282610688565b6001600160a01b031614610b075760405162461bcd60e51b8152600401808060200182810382526029815260200180610f886029913960400191505060405180910390fd5b6001600160a01b038216610b4c5760405162461bcd60e51b8152600401808060200182810382526024815260200180610e816024913960400191505060405180910390fd5b610b5581610d2c565b6001600160a01b0383166000908152600360205260409020610b7690610d69565b6001600160a01b0382166000908152600360205260409020610b9790610d80565b60008181526001602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b038216600090815260056020526040812054610c1d90600163ffffffff610d8916565b600083815260066020526040902054909150808214610cb8576001600160a01b0384166000908152600560205260408120805484908110610c5a57fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b031681526020019081526020016000208381548110610c9857fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b0384166000908152600560205260409020805490610ce1906000198301610de6565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b3b151590565b6000818152600260205260409020546001600160a01b031615610d6657600081815260026020526040902080546001600160a01b03191690555b50565b8054610d7c90600163ffffffff610d8916565b9055565b80546001019055565b600082821115610de0576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b8154818355818111156105835760008381526020902061058391810190830161053091905b80821115610e1f5760008155600101610e0b565b509056fe455243373231456e756d657261626c653a206f776e657220696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564455243373231456e756d657261626c653a20676c6f62616c20696e646578206f7574206f6620626f756e6473a265627a7a72315820ac1887a6474a99396e4fc43f08272699730b8e38a79e4cbd970da00b0a94dbce64736f6c63430005110032",
382
382
  "linkReferences": {},
383
383
  "deployedLinkReferences": {}
384
384
  }