@artblocks/contracts 1.2.0 → 1.2.1

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 (164) hide show
  1. package/README.md +22 -38
  2. package/artifacts/contracts/AdminACLV1.sol/AdminACLV1.json +2 -2
  3. package/artifacts/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2.sol/BytecodeStorageReaderContractV2.json +201 -0
  4. package/artifacts/contracts/BytecodeStorageReaders/UniversalBytecodeStorageReader.sol/UniversalBytecodeStorageReader.json +154 -0
  5. package/artifacts/contracts/BytecodeStorageV2Writer.sol/BytecodeStorageV2Writer.json +87 -0
  6. package/artifacts/contracts/DependencyRegistryV0.sol/DependencyRegistryV0.json +144 -14
  7. package/artifacts/contracts/GenArt721CoreV3_Curated.sol/GenArt721CoreV3_Curated.json +2493 -0
  8. package/artifacts/contracts/OwnedCreate2FactoryV0.sol/OwnedCreate2FactoryV0.json +311 -0
  9. package/artifacts/contracts/archive/GenArt721CoreV3.sol/GenArt721CoreV3.json +15 -2
  10. package/artifacts/contracts/archive/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +15 -2
  11. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol/MinterDAExpV2.json +2 -2
  12. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol/MinterDAExpV3.json +2 -2
  13. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV4.sol/MinterDAExpV4.json +2 -2
  14. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +2 -2
  15. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +2 -2
  16. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +2 -2
  17. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol/MinterDALinV2.json +2 -2
  18. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol/MinterDALinV3.json +2 -2
  19. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV4.sol/MinterDALinV4.json +2 -2
  20. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol/MinterHolderV1.json +2 -2
  21. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +2 -2
  22. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol/MinterHolderV3.json +2 -2
  23. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV4.sol/MinterHolderV4.json +2 -2
  24. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol/MinterMerkleV1.json +2 -2
  25. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol/MinterMerkleV2.json +2 -2
  26. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol/MinterMerkleV3.json +2 -2
  27. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol/MinterMerkleV4.json +2 -2
  28. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV5.sol/MinterMerkleV5.json +2 -2
  29. package/artifacts/contracts/archive/minter-suite/Minters/MinterPolyptych/MinterPolyptychV0.sol/IGenArt721CoreContractV3WithRandomizer.json +37 -0
  30. package/artifacts/contracts/archive/minter-suite/Minters/MinterPolyptych/MinterPolyptychV0.sol/MinterPolyptychV0.json +2 -2
  31. package/artifacts/contracts/archive/minter-suite/Minters/MinterSEA/MinterSEAV0.sol/MinterSEAV0.json +2 -2
  32. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +2 -2
  33. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +2 -2
  34. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV4.sol/MinterSetPriceV4.json +2 -2
  35. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +2 -2
  36. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +2 -2
  37. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +2 -2
  38. package/artifacts/contracts/engine/V3/EngineFactoryV0.sol/EngineFactoryV0.json +20 -2
  39. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +48 -12
  40. package/artifacts/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +76 -40
  41. package/artifacts/contracts/engine/V3/forks/GenArt721CoreV3_Engine_Flex_PROOF.sol/GenArt721CoreV3_Engine_Flex_PROOF.json +15 -2
  42. package/artifacts/contracts/engine/V3/forks/PROHIBITION/AdminACLV0_PROHIBITION.sol/AdminACLV0_PROHIBITION.json +2 -2
  43. package/artifacts/contracts/engine/V3/forks/PROHIBITION/GenArt721CoreV3_Engine_Flex_PROHIBITION.sol/GenArt721CoreV3_Engine_Flex_PROHIBITION.json +15 -2
  44. package/artifacts/contracts/engine/V3/forks/PROHIBITION/interfaces/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.sol/IGenArt721CoreContractV3_Engine_Flex_PROHIBITION.json +37 -0
  45. package/artifacts/contracts/engine-registry/CoreRegistryV1.sol/CoreRegistryV1.json +2 -2
  46. package/artifacts/contracts/generator/AddressChunks.sol/AddressChunks.json +10 -0
  47. package/artifacts/contracts/generator/GenArt721GeneratorV0.sol/GenArt721GeneratorV0.json +333 -0
  48. package/artifacts/contracts/generator/GenArt721GeneratorV0.sol/ILegacyGenArt721CoreV2_PBAB_Flex.json +47 -0
  49. package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReader.sol/IBytecodeStorageReader.json +7 -7
  50. package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReaderV2.sol/IBytecodeStorageReaderV2.json +7 -7
  51. package/artifacts/contracts/interfaces/v0.8.x/IBytecodeStorageReader_Base.sol/IBytecodeStorageReader_Base.json +30 -0
  52. package/artifacts/contracts/interfaces/v0.8.x/ICoreRegistryV1.sol/ICoreRegistryV1.json +13 -0
  53. package/artifacts/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol/IDependencyRegistryV0.json +170 -0
  54. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +37 -0
  55. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +37 -0
  56. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +42 -0
  57. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +42 -0
  58. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.sol/IGenArt721CoreContractV3_Engine_Flex_PreV3p2.json +37 -0
  59. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine_PreV3p2.sol/IGenArt721CoreContractV3_Engine_PreV3p2.json +37 -0
  60. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV0.sol/IGenArt721CoreProjectScriptV0.json +59 -0
  61. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV1.sol/IGenArt721CoreProjectScriptV1.json +64 -0
  62. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV0.sol/IGenArt721CoreTokenHashProviderV0.json +30 -0
  63. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV1.sol/IGenArt721CoreTokenHashProviderV1.json +30 -0
  64. package/artifacts/contracts/interfaces/v0.8.x/IGenArt721GeneratorV0.sol/IGenArt721GeneratorV0.json +63 -0
  65. package/artifacts/contracts/interfaces/v0.8.x/IOwnedCreate2FactoryV0.sol/IOwnedCreate2FactoryV0.json +74 -0
  66. package/artifacts/contracts/interfaces/v0.8.x/ISeaDropShimForContract.sol/ISeaDropShimForContract.json +37 -0
  67. package/artifacts/contracts/interfaces/v0.8.x/ISharedMinterMinPriceV0.sol/ISharedMinterMinPriceV0.json +37 -0
  68. package/artifacts/contracts/interfaces/v0.8.x/IUniversalBytecodeStorageReader.sol/IUniversalBytecodeStorageReader.json +56 -0
  69. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ERC721SeaDropStructsErrorsAndEvents.sol/ERC721SeaDropStructsErrorsAndEvents.json +43 -0
  70. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/INonFungibleSeaDropToken.sol/INonFungibleSeaDropToken.json +715 -0
  71. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDrop.sol/ISeaDrop.json +1571 -0
  72. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDropTokenContractMetadata.sol/ISeaDropTokenContractMetadata.json +345 -0
  73. package/artifacts/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropErrorsAndEvents.sol/SeaDropErrorsAndEvents.json +717 -0
  74. package/artifacts/contracts/libs/v0.8.x/AuthLib.sol/AuthLib.json +2 -2
  75. package/artifacts/contracts/libs/v0.8.x/Bytes32Strings.sol/Bytes32Strings.json +2 -2
  76. package/artifacts/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol/DependencyRegistryStorageLib.json +2 -2
  77. package/artifacts/contracts/libs/v0.8.x/JsonStatic.sol/JsonStatic.json +10 -0
  78. package/artifacts/contracts/libs/v0.8.x/V3FlexLib.sol/V3FlexLib.json +9 -22
  79. package/artifacts/contracts/libs/v0.8.x/minter-libs/MaxInvocationsLib.sol/MaxInvocationsLib.json +2 -2
  80. package/artifacts/contracts/libs/v0.8.x/minter-libs/MinPriceLib.sol/MinPriceLib.json +24 -0
  81. package/artifacts/contracts/libs/v0.8.x/minter-libs/PolyptychLib.sol/PolyptychLib.json +2 -2
  82. package/artifacts/contracts/libs/v0.8.x/minter-libs/RAMLib.sol/RAMLib.json +2 -2
  83. package/artifacts/contracts/libs/v0.8.x/minter-libs/SEALib.sol/SEALib.json +2 -2
  84. package/artifacts/contracts/libs/v0.8.x/minter-libs/SettlementExpLib.sol/SettlementExpLib.json +2 -2
  85. package/artifacts/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol/SplitFundsLib.json +2 -2
  86. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +2 -2
  87. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV2.sol/MinterFilterV2.json +2 -2
  88. package/artifacts/contracts/minter-suite/Minters/MinterDAExpHolderV5.sol/MinterDAExpHolderV5.json +2 -2
  89. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV3.sol/MinterDAExpSettlementV3.json +2 -2
  90. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV5.sol/MinterDAExpV5.json +2 -2
  91. package/artifacts/contracts/minter-suite/Minters/MinterDALinHolderV5.sol/MinterDALinHolderV5.json +2 -2
  92. package/artifacts/contracts/minter-suite/Minters/MinterDALinV5.sol/MinterDALinV5.json +2 -2
  93. package/artifacts/contracts/minter-suite/Minters/MinterMinPriceMerkleV0.sol/MinterMinPriceMerkleV0.json +664 -0
  94. package/artifacts/contracts/minter-suite/Minters/MinterMinPriceV0.sol/MinterMinPriceV0.json +387 -0
  95. package/artifacts/contracts/minter-suite/Minters/MinterRAMV0.sol/MinterRAMV0.json +2 -2
  96. package/artifacts/contracts/minter-suite/Minters/MinterSEAV1.sol/MinterSEAV1.json +2 -2
  97. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V5.sol/MinterSetPriceERC20V5.json +2 -2
  98. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceHolderV5.sol/MinterSetPriceHolderV5.json +2 -2
  99. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceMerkleV5.sol/MinterSetPriceMerkleV5.json +2 -2
  100. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychERC20V5.sol/MinterSetPricePolyptychERC20V5.json +2 -2
  101. package/artifacts/contracts/minter-suite/Minters/MinterSetPricePolyptychV5.sol/MinterSetPricePolyptychV5.json +2 -2
  102. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV5.sol/MinterSetPriceV5.json +2 -2
  103. package/artifacts/contracts/minter-suite/Minters/one-off/MinterSetPriceV5_SingleCore.sol/MinterSetPriceV5_SingleCore.json +2 -2
  104. package/artifacts/contracts/minter-suite/Minters/one-off/SeaDropXArtBlocksShim.sol/SeaDropXArtBlocksShim.json +1206 -0
  105. package/artifacts/contracts/mock/BytecodeV1LibCallsMock.sol/BytecodeV1LibCallsMock.json +2 -2
  106. package/artifacts/contracts/mock/BytecodeV2LibCallsMock.sol/BytecodeV2LibCallsMock.json +2 -2
  107. package/artifacts/contracts/mock/DummySharedMinter.sol/DummySharedMinter.json +2 -2
  108. package/artifacts/contracts/mock/ERC20MockAltDecimals.sol/ERC20MockAltDecimals.json +318 -0
  109. package/artifacts/contracts/mock/ForceSendMock.sol/ForceSendMock.json +2 -2
  110. package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +2 -2
  111. package/artifacts/contracts/mock/MockAdminACLV0_PROHIBITION.sol/MockAdminACLV0Events_PROHIBITION.json +2 -2
  112. package/artifacts/contracts/mock/MockFileStore.sol/MockFileStore.json +35 -0
  113. package/artifacts/contracts/mock/OriginRegisterMock.sol/OriginRegisterMock.json +2 -2
  114. package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +2 -2
  115. package/artifacts/contracts/randomizer/deprecated/PolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +2 -2
  116. package/artifacts/contracts/randomizer/deprecated/RandomizerV2.sol/BasicRandomizerV2.json +2 -2
  117. package/artifacts/contracts/randomizer/shared/SharedRandomizerV0.sol/SharedRandomizerV0.json +2 -2
  118. package/contracts/BytecodeStorageReaders/BytecodeStorageReaderContractV2.sol +103 -0
  119. package/contracts/BytecodeStorageReaders/UniversalBytecodeStorageReader.sol +70 -0
  120. package/contracts/BytecodeStorageV2Writer.sol +69 -0
  121. package/contracts/DependencyRegistryV0.sol +229 -60
  122. package/contracts/GenArt721CoreV3_Curated.sol +133 -0
  123. package/contracts/OwnedCreate2FactoryV0.sol +173 -0
  124. package/contracts/engine/V3/EngineFactoryV0.sol +10 -2
  125. package/contracts/engine/V3/GenArt721CoreV3_Engine.sol +139 -70
  126. package/contracts/engine/V3/GenArt721CoreV3_Engine_Flex.sol +141 -71
  127. package/contracts/generator/AddressChunks.sol +106 -0
  128. package/contracts/generator/GenArt721GeneratorV0.sol +1094 -0
  129. package/contracts/generator/scripty-support/Scripty.sol +5 -0
  130. package/contracts/interfaces/v0.8.x/IBytecodeStorageReader.sol +34 -36
  131. package/contracts/interfaces/v0.8.x/IBytecodeStorageReaderV2.sol +5 -3
  132. package/contracts/interfaces/v0.8.x/IBytecodeStorageReader_Base.sol +20 -0
  133. package/contracts/interfaces/v0.8.x/ICoreRegistryV1.sol +5 -0
  134. package/contracts/interfaces/v0.8.x/IDependencyRegistryV0.sol +94 -0
  135. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Base.sol +13 -2
  136. package/contracts/interfaces/v0.8.x/IGenArt721CoreContractV3_Engine.sol +3 -1
  137. package/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV0.sol +22 -0
  138. package/contracts/interfaces/v0.8.x/IGenArt721CoreProjectScriptV1.sol +23 -0
  139. package/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV0.sol +11 -0
  140. package/contracts/interfaces/v0.8.x/IGenArt721CoreTokenHashProviderV1.sol +9 -0
  141. package/contracts/interfaces/v0.8.x/IGenArt721GeneratorV0.sol +14 -0
  142. package/contracts/interfaces/v0.8.x/IOwnedCreate2FactoryV0.sol +40 -0
  143. package/contracts/interfaces/v0.8.x/ISeaDropShimForContract.sol +19 -0
  144. package/contracts/interfaces/v0.8.x/ISharedMinterMinPriceV0.sol +22 -0
  145. package/contracts/interfaces/v0.8.x/ISharedMinterRequired.sol +10 -4
  146. package/contracts/interfaces/v0.8.x/IUniversalBytecodeStorageReader.sol +28 -0
  147. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ERC721SeaDropStructsErrorsAndEvents.sol +58 -0
  148. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/INonFungibleSeaDropToken.sol +186 -0
  149. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDrop.sol +337 -0
  150. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/ISeaDropTokenContractMetadata.sol +152 -0
  151. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropErrorsAndEvents.sol +320 -0
  152. package/contracts/interfaces/v0.8.x/integration-refs/OpenSea/SeaDropStructs.sol +146 -0
  153. package/contracts/libs/v0.8.x/Bytes32Strings.sol +20 -0
  154. package/contracts/libs/v0.8.x/DependencyRegistryStorageLib.sol +11 -3
  155. package/contracts/libs/v0.8.x/JsonStatic.sol +373 -0
  156. package/contracts/libs/v0.8.x/V3FlexLib.sol +9 -3
  157. package/contracts/libs/v0.8.x/minter-libs/MinPriceLib.sol +64 -0
  158. package/contracts/libs/v0.8.x/minter-libs/SplitFundsLib.sol +107 -0
  159. package/contracts/minter-suite/Minters/MinterMinPriceMerkleV0.sol +765 -0
  160. package/contracts/minter-suite/Minters/MinterMinPriceV0.sol +462 -0
  161. package/contracts/minter-suite/Minters/one-off/SeaDropXArtBlocksShim.sol +869 -0
  162. package/contracts/mock/ERC20MockAltDecimals.sol +31 -0
  163. package/contracts/mock/MockFileStore.sol +22 -0
  164. package/package.json +20 -18
@@ -235,8 +235,8 @@
235
235
  "type": "function"
236
236
  }
237
237
  ],
238
- "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b610a528061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100995760003560e01c80631676ddc31461009e578063715018a6146100bc57806373748ec4146100c65780637ac4f329146100d95780637bdaf6fc146100ef5780638da5cb5b1461011a578063b3cdf53714610122578063f1052af514610135578063f2fde38b14610158578063f889b3ed1461016b578063fac2c6211461017e575b600080fd5b6100a6610191565b6040516100b391906107da565b60405180910390f35b6100c46101a2565b005b6100c46100d4366004610872565b6101b6565b6100e1610207565b6040519081526020016100b3565b6101026100fd3660046108b3565b610213565b6040516001600160a01b0390911681526020016100b3565b610102610226565b6100c46101303660046108cc565b610235565b610148610143366004610981565b610316565b60405190151581526020016100b3565b6100c4610166366004610981565b610323565b6100c461017936600461099c565b61039c565b6100c461018c366004610981565b6103b4565b606061019d60016103c5565b905090565b6101aa6103d9565b6101b46000610438565b565b6101be6103d9565b8060005b81811015610201576101f98484838181106101df576101df6109cf565b90506020020160208101906101f49190610981565b610488565b6001016101c2565b50505050565b600061019d6001610512565b600061022060018361051c565b92915050565b6000546001600160a01b031690565b61023d6103d9565b84838114801561024c57508082145b6102985760405162461bcd60e51b81526020600482015260186024820152774d69736d617463686564206172726179206c656e6774687360401b60448201526064015b60405180910390fd5b60005b8181101561030c576103048888838181106102b8576102b86109cf565b90506020020160208101906102cd9190610981565b8787848181106102df576102df6109cf565b905060200201358686858181106102f8576102f86109cf565b90506020020135610528565b60010161029b565b5050505050505050565b60006102206001836105c6565b61032b6103d9565b6001600160a01b0381166103905760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028f565b61039981610438565b50565b6103a46103d9565b6103af838383610528565b505050565b6103bc6103d9565b61039981610488565b606060006103d2836105e8565b9392505050565b336103e2610226565b6001600160a01b0316146101b45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b610493600182610644565b6104db5760405162461bcd60e51b81526020600482015260196024820152784f6e6c79207265676973746572656420636f6e74726163747360381b604482015260640161028f565b6040516001600160a01b038216907f3475b9891ecf29e996feed01eeb42a860ec225283a439d214ffaeac5e006be7d90600090a250565b6000610220825490565b60006103d28383610659565b610533600184610683565b61057d5760405162461bcd60e51b815260206004820152601b60248201527a10dbdb9d1c9858dd08185b1c9958591e481c9959da5cdd195c9959602a1b604482015260640161028f565b60408051838152602081018390526001600160a01b038516917f961dc2d336161fe3b9b4b3966ee713e56cdc9143f77c75a4334e85d6e96bc158910160405180910390a2505050565b6001600160a01b038116600090815260018301602052604081205415156103d2565b60608160000180548060200260200160405190810160405280929190818152602001828054801561063857602002820191906000526020600020905b815481526020019060010190808311610624575b50505050509050919050565b60006103d2836001600160a01b038416610698565b6000826000018281548110610670576106706109cf565b9060005260206000200154905092915050565b60006103d2836001600160a01b03841661078b565b600081815260018301602052604081205480156107815760006106bc6001836109e5565b85549091506000906106d0906001906109e5565b90508181146107355760008660000182815481106106f0576106f06109cf565b9060005260206000200154905080876000018481548110610713576107136109cf565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061074657610746610a06565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610220565b6000915050610220565b60008181526001830160205260408120546107d257508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610220565b506000610220565b6020808252825182820181905260009190848201906040850190845b8181101561081b5783516001600160a01b0316835292840192918401916001016107f6565b50909695505050505050565b60008083601f84011261083957600080fd5b5081356001600160401b0381111561085057600080fd5b6020830191508360208260051b850101111561086b57600080fd5b9250929050565b6000806020838503121561088557600080fd5b82356001600160401b0381111561089b57600080fd5b6108a785828601610827565b90969095509350505050565b6000602082840312156108c557600080fd5b5035919050565b600080600080600080606087890312156108e557600080fd5b86356001600160401b03808211156108fc57600080fd5b6109088a838b01610827565b9098509650602089013591508082111561092157600080fd5b61092d8a838b01610827565b9096509450604089013591508082111561094657600080fd5b5061095389828a01610827565b979a9699509497509295939492505050565b80356001600160a01b038116811461097c57600080fd5b919050565b60006020828403121561099357600080fd5b6103d282610965565b6000806000606084860312156109b157600080fd5b6109ba84610965565b95602085013595506040909401359392505050565b634e487b7160e01b600052603260045260246000fd5b8181038181111561022057634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220f7ce684388e7335d3f1146482f357385972249ca1ce5bb6b3df83d2a9685112964736f6c63430008130033",
239
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100995760003560e01c80631676ddc31461009e578063715018a6146100bc57806373748ec4146100c65780637ac4f329146100d95780637bdaf6fc146100ef5780638da5cb5b1461011a578063b3cdf53714610122578063f1052af514610135578063f2fde38b14610158578063f889b3ed1461016b578063fac2c6211461017e575b600080fd5b6100a6610191565b6040516100b391906107da565b60405180910390f35b6100c46101a2565b005b6100c46100d4366004610872565b6101b6565b6100e1610207565b6040519081526020016100b3565b6101026100fd3660046108b3565b610213565b6040516001600160a01b0390911681526020016100b3565b610102610226565b6100c46101303660046108cc565b610235565b610148610143366004610981565b610316565b60405190151581526020016100b3565b6100c4610166366004610981565b610323565b6100c461017936600461099c565b61039c565b6100c461018c366004610981565b6103b4565b606061019d60016103c5565b905090565b6101aa6103d9565b6101b46000610438565b565b6101be6103d9565b8060005b81811015610201576101f98484838181106101df576101df6109cf565b90506020020160208101906101f49190610981565b610488565b6001016101c2565b50505050565b600061019d6001610512565b600061022060018361051c565b92915050565b6000546001600160a01b031690565b61023d6103d9565b84838114801561024c57508082145b6102985760405162461bcd60e51b81526020600482015260186024820152774d69736d617463686564206172726179206c656e6774687360401b60448201526064015b60405180910390fd5b60005b8181101561030c576103048888838181106102b8576102b86109cf565b90506020020160208101906102cd9190610981565b8787848181106102df576102df6109cf565b905060200201358686858181106102f8576102f86109cf565b90506020020135610528565b60010161029b565b5050505050505050565b60006102206001836105c6565b61032b6103d9565b6001600160a01b0381166103905760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028f565b61039981610438565b50565b6103a46103d9565b6103af838383610528565b505050565b6103bc6103d9565b61039981610488565b606060006103d2836105e8565b9392505050565b336103e2610226565b6001600160a01b0316146101b45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b610493600182610644565b6104db5760405162461bcd60e51b81526020600482015260196024820152784f6e6c79207265676973746572656420636f6e74726163747360381b604482015260640161028f565b6040516001600160a01b038216907f3475b9891ecf29e996feed01eeb42a860ec225283a439d214ffaeac5e006be7d90600090a250565b6000610220825490565b60006103d28383610659565b610533600184610683565b61057d5760405162461bcd60e51b815260206004820152601b60248201527a10dbdb9d1c9858dd08185b1c9958591e481c9959da5cdd195c9959602a1b604482015260640161028f565b60408051838152602081018390526001600160a01b038516917f961dc2d336161fe3b9b4b3966ee713e56cdc9143f77c75a4334e85d6e96bc158910160405180910390a2505050565b6001600160a01b038116600090815260018301602052604081205415156103d2565b60608160000180548060200260200160405190810160405280929190818152602001828054801561063857602002820191906000526020600020905b815481526020019060010190808311610624575b50505050509050919050565b60006103d2836001600160a01b038416610698565b6000826000018281548110610670576106706109cf565b9060005260206000200154905092915050565b60006103d2836001600160a01b03841661078b565b600081815260018301602052604081205480156107815760006106bc6001836109e5565b85549091506000906106d0906001906109e5565b90508181146107355760008660000182815481106106f0576106f06109cf565b9060005260206000200154905080876000018481548110610713576107136109cf565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061074657610746610a06565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610220565b6000915050610220565b60008181526001830160205260408120546107d257508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610220565b506000610220565b6020808252825182820181905260009190848201906040850190845b8181101561081b5783516001600160a01b0316835292840192918401916001016107f6565b50909695505050505050565b60008083601f84011261083957600080fd5b5081356001600160401b0381111561085057600080fd5b6020830191508360208260051b850101111561086b57600080fd5b9250929050565b6000806020838503121561088557600080fd5b82356001600160401b0381111561089b57600080fd5b6108a785828601610827565b90969095509350505050565b6000602082840312156108c557600080fd5b5035919050565b600080600080600080606087890312156108e557600080fd5b86356001600160401b03808211156108fc57600080fd5b6109088a838b01610827565b9098509650602089013591508082111561092157600080fd5b61092d8a838b01610827565b9096509450604089013591508082111561094657600080fd5b5061095389828a01610827565b979a9699509497509295939492505050565b80356001600160a01b038116811461097c57600080fd5b919050565b60006020828403121561099357600080fd5b6103d282610965565b6000806000606084860312156109b157600080fd5b6109ba84610965565b95602085013595506040909401359392505050565b634e487b7160e01b600052603260045260246000fd5b8181038181111561022057634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220f7ce684388e7335d3f1146482f357385972249ca1ce5bb6b3df83d2a9685112964736f6c63430008130033",
238
+ "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b610a528061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100995760003560e01c80631676ddc31461009e578063715018a6146100bc57806373748ec4146100c65780637ac4f329146100d95780637bdaf6fc146100ef5780638da5cb5b1461011a578063b3cdf53714610122578063f1052af514610135578063f2fde38b14610158578063f889b3ed1461016b578063fac2c6211461017e575b600080fd5b6100a6610191565b6040516100b391906107da565b60405180910390f35b6100c46101a2565b005b6100c46100d4366004610872565b6101b6565b6100e1610207565b6040519081526020016100b3565b6101026100fd3660046108b3565b610213565b6040516001600160a01b0390911681526020016100b3565b610102610226565b6100c46101303660046108cc565b610235565b610148610143366004610981565b610316565b60405190151581526020016100b3565b6100c4610166366004610981565b610323565b6100c461017936600461099c565b61039c565b6100c461018c366004610981565b6103b4565b606061019d60016103c5565b905090565b6101aa6103d9565b6101b46000610438565b565b6101be6103d9565b8060005b81811015610201576101f98484838181106101df576101df6109cf565b90506020020160208101906101f49190610981565b610488565b6001016101c2565b50505050565b600061019d6001610512565b600061022060018361051c565b92915050565b6000546001600160a01b031690565b61023d6103d9565b84838114801561024c57508082145b6102985760405162461bcd60e51b81526020600482015260186024820152774d69736d617463686564206172726179206c656e6774687360401b60448201526064015b60405180910390fd5b60005b8181101561030c576103048888838181106102b8576102b86109cf565b90506020020160208101906102cd9190610981565b8787848181106102df576102df6109cf565b905060200201358686858181106102f8576102f86109cf565b90506020020135610528565b60010161029b565b5050505050505050565b60006102206001836105c6565b61032b6103d9565b6001600160a01b0381166103905760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028f565b61039981610438565b50565b6103a46103d9565b6103af838383610528565b505050565b6103bc6103d9565b61039981610488565b606060006103d2836105e8565b9392505050565b336103e2610226565b6001600160a01b0316146101b45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b610493600182610644565b6104db5760405162461bcd60e51b81526020600482015260196024820152784f6e6c79207265676973746572656420636f6e74726163747360381b604482015260640161028f565b6040516001600160a01b038216907f3475b9891ecf29e996feed01eeb42a860ec225283a439d214ffaeac5e006be7d90600090a250565b6000610220825490565b60006103d28383610659565b610533600184610683565b61057d5760405162461bcd60e51b815260206004820152601b60248201527a10dbdb9d1c9858dd08185b1c9958591e481c9959da5cdd195c9959602a1b604482015260640161028f565b60408051838152602081018390526001600160a01b038516917f961dc2d336161fe3b9b4b3966ee713e56cdc9143f77c75a4334e85d6e96bc158910160405180910390a2505050565b6001600160a01b038116600090815260018301602052604081205415156103d2565b60608160000180548060200260200160405190810160405280929190818152602001828054801561063857602002820191906000526020600020905b815481526020019060010190808311610624575b50505050509050919050565b60006103d2836001600160a01b038416610698565b6000826000018281548110610670576106706109cf565b9060005260206000200154905092915050565b60006103d2836001600160a01b03841661078b565b600081815260018301602052604081205480156107815760006106bc6001836109e5565b85549091506000906106d0906001906109e5565b90508181146107355760008660000182815481106106f0576106f06109cf565b9060005260206000200154905080876000018481548110610713576107136109cf565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061074657610746610a06565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610220565b6000915050610220565b60008181526001830160205260408120546107d257508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610220565b506000610220565b6020808252825182820181905260009190848201906040850190845b8181101561081b5783516001600160a01b0316835292840192918401916001016107f6565b50909695505050505050565b60008083601f84011261083957600080fd5b5081356001600160401b0381111561085057600080fd5b6020830191508360208260051b850101111561086b57600080fd5b9250929050565b6000806020838503121561088557600080fd5b82356001600160401b0381111561089b57600080fd5b6108a785828601610827565b90969095509350505050565b6000602082840312156108c557600080fd5b5035919050565b600080600080600080606087890312156108e557600080fd5b86356001600160401b03808211156108fc57600080fd5b6109088a838b01610827565b9098509650602089013591508082111561092157600080fd5b61092d8a838b01610827565b9096509450604089013591508082111561094657600080fd5b5061095389828a01610827565b979a9699509497509295939492505050565b80356001600160a01b038116811461097c57600080fd5b919050565b60006020828403121561099357600080fd5b6103d282610965565b6000806000606084860312156109b157600080fd5b6109ba84610965565b95602085013595506040909401359392505050565b634e487b7160e01b600052603260045260246000fd5b8181038181111561022057634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220923545d96b0f882d08f1658eb0adadb73635ffab05ba51f2918edf28ed0fdcab64736f6c63430008130033",
239
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100995760003560e01c80631676ddc31461009e578063715018a6146100bc57806373748ec4146100c65780637ac4f329146100d95780637bdaf6fc146100ef5780638da5cb5b1461011a578063b3cdf53714610122578063f1052af514610135578063f2fde38b14610158578063f889b3ed1461016b578063fac2c6211461017e575b600080fd5b6100a6610191565b6040516100b391906107da565b60405180910390f35b6100c46101a2565b005b6100c46100d4366004610872565b6101b6565b6100e1610207565b6040519081526020016100b3565b6101026100fd3660046108b3565b610213565b6040516001600160a01b0390911681526020016100b3565b610102610226565b6100c46101303660046108cc565b610235565b610148610143366004610981565b610316565b60405190151581526020016100b3565b6100c4610166366004610981565b610323565b6100c461017936600461099c565b61039c565b6100c461018c366004610981565b6103b4565b606061019d60016103c5565b905090565b6101aa6103d9565b6101b46000610438565b565b6101be6103d9565b8060005b81811015610201576101f98484838181106101df576101df6109cf565b90506020020160208101906101f49190610981565b610488565b6001016101c2565b50505050565b600061019d6001610512565b600061022060018361051c565b92915050565b6000546001600160a01b031690565b61023d6103d9565b84838114801561024c57508082145b6102985760405162461bcd60e51b81526020600482015260186024820152774d69736d617463686564206172726179206c656e6774687360401b60448201526064015b60405180910390fd5b60005b8181101561030c576103048888838181106102b8576102b86109cf565b90506020020160208101906102cd9190610981565b8787848181106102df576102df6109cf565b905060200201358686858181106102f8576102f86109cf565b90506020020135610528565b60010161029b565b5050505050505050565b60006102206001836105c6565b61032b6103d9565b6001600160a01b0381166103905760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028f565b61039981610438565b50565b6103a46103d9565b6103af838383610528565b505050565b6103bc6103d9565b61039981610488565b606060006103d2836105e8565b9392505050565b336103e2610226565b6001600160a01b0316146101b45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b610493600182610644565b6104db5760405162461bcd60e51b81526020600482015260196024820152784f6e6c79207265676973746572656420636f6e74726163747360381b604482015260640161028f565b6040516001600160a01b038216907f3475b9891ecf29e996feed01eeb42a860ec225283a439d214ffaeac5e006be7d90600090a250565b6000610220825490565b60006103d28383610659565b610533600184610683565b61057d5760405162461bcd60e51b815260206004820152601b60248201527a10dbdb9d1c9858dd08185b1c9958591e481c9959da5cdd195c9959602a1b604482015260640161028f565b60408051838152602081018390526001600160a01b038516917f961dc2d336161fe3b9b4b3966ee713e56cdc9143f77c75a4334e85d6e96bc158910160405180910390a2505050565b6001600160a01b038116600090815260018301602052604081205415156103d2565b60608160000180548060200260200160405190810160405280929190818152602001828054801561063857602002820191906000526020600020905b815481526020019060010190808311610624575b50505050509050919050565b60006103d2836001600160a01b038416610698565b6000826000018281548110610670576106706109cf565b9060005260206000200154905092915050565b60006103d2836001600160a01b03841661078b565b600081815260018301602052604081205480156107815760006106bc6001836109e5565b85549091506000906106d0906001906109e5565b90508181146107355760008660000182815481106106f0576106f06109cf565b9060005260206000200154905080876000018481548110610713576107136109cf565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061074657610746610a06565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610220565b6000915050610220565b60008181526001830160205260408120546107d257508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610220565b506000610220565b6020808252825182820181905260009190848201906040850190845b8181101561081b5783516001600160a01b0316835292840192918401916001016107f6565b50909695505050505050565b60008083601f84011261083957600080fd5b5081356001600160401b0381111561085057600080fd5b6020830191508360208260051b850101111561086b57600080fd5b9250929050565b6000806020838503121561088557600080fd5b82356001600160401b0381111561089b57600080fd5b6108a785828601610827565b90969095509350505050565b6000602082840312156108c557600080fd5b5035919050565b600080600080600080606087890312156108e557600080fd5b86356001600160401b03808211156108fc57600080fd5b6109088a838b01610827565b9098509650602089013591508082111561092157600080fd5b61092d8a838b01610827565b9096509450604089013591508082111561094657600080fd5b5061095389828a01610827565b979a9699509497509295939492505050565b80356001600160a01b038116811461097c57600080fd5b919050565b60006020828403121561099357600080fd5b6103d282610965565b6000806000606084860312156109b157600080fd5b6109ba84610965565b95602085013595506040909401359392505050565b634e487b7160e01b600052603260045260246000fd5b8181038181111561022057634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220923545d96b0f882d08f1658eb0adadb73635ffab05ba51f2918edf28ed0fdcab64736f6c63430008130033",
240
240
  "linkReferences": {},
241
241
  "deployedLinkReferences": {}
242
242
  }
@@ -0,0 +1,10 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "AddressChunks",
4
+ "sourceName": "contracts/generator/AddressChunks.sol",
5
+ "abi": [],
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d1cbd8b9961bab79cf17f9b8d2d80dace654fcdd8db943d222022c74f7ac02b764736f6c63430008160033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d1cbd8b9961bab79cf17f9b8d2d80dace654fcdd8db943d222022c74f7ac02b764736f6c63430008160033",
8
+ "linkReferences": {},
9
+ "deployedLinkReferences": {}
10
+ }
@@ -0,0 +1,333 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "GenArt721GeneratorV0",
4
+ "sourceName": "contracts/generator/GenArt721GeneratorV0.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": true,
11
+ "internalType": "address",
12
+ "name": "_dependencyRegistry",
13
+ "type": "address"
14
+ }
15
+ ],
16
+ "name": "DependencyRegistryUpdated",
17
+ "type": "event"
18
+ },
19
+ {
20
+ "anonymous": false,
21
+ "inputs": [
22
+ {
23
+ "indexed": true,
24
+ "internalType": "address",
25
+ "name": "_gunzipScriptBytecodeAddress",
26
+ "type": "address"
27
+ }
28
+ ],
29
+ "name": "GunzipScriptBytecodeAddressUpdated",
30
+ "type": "event"
31
+ },
32
+ {
33
+ "anonymous": false,
34
+ "inputs": [
35
+ {
36
+ "indexed": false,
37
+ "internalType": "uint8",
38
+ "name": "version",
39
+ "type": "uint8"
40
+ }
41
+ ],
42
+ "name": "Initialized",
43
+ "type": "event"
44
+ },
45
+ {
46
+ "anonymous": false,
47
+ "inputs": [
48
+ {
49
+ "indexed": true,
50
+ "internalType": "address",
51
+ "name": "_scriptyBuilder",
52
+ "type": "address"
53
+ }
54
+ ],
55
+ "name": "ScriptyBuilderUpdated",
56
+ "type": "event"
57
+ },
58
+ {
59
+ "anonymous": false,
60
+ "inputs": [
61
+ {
62
+ "indexed": true,
63
+ "internalType": "address",
64
+ "name": "_universalBytecodeStorageReader",
65
+ "type": "address"
66
+ }
67
+ ],
68
+ "name": "UniversalBytecodeStorageReaderUpdated",
69
+ "type": "event"
70
+ },
71
+ {
72
+ "inputs": [],
73
+ "name": "dependencyRegistry",
74
+ "outputs": [
75
+ {
76
+ "internalType": "contract IDependencyRegistryV0",
77
+ "name": "",
78
+ "type": "address"
79
+ }
80
+ ],
81
+ "stateMutability": "view",
82
+ "type": "function"
83
+ },
84
+ {
85
+ "inputs": [
86
+ {
87
+ "internalType": "string",
88
+ "name": "dependencyNameAndVersion",
89
+ "type": "string"
90
+ }
91
+ ],
92
+ "name": "getDependencyScript",
93
+ "outputs": [
94
+ {
95
+ "internalType": "string",
96
+ "name": "",
97
+ "type": "string"
98
+ }
99
+ ],
100
+ "stateMutability": "view",
101
+ "type": "function"
102
+ },
103
+ {
104
+ "inputs": [
105
+ {
106
+ "internalType": "address",
107
+ "name": "coreContract",
108
+ "type": "address"
109
+ },
110
+ {
111
+ "internalType": "uint256",
112
+ "name": "projectId",
113
+ "type": "uint256"
114
+ }
115
+ ],
116
+ "name": "getOnChainStatus",
117
+ "outputs": [
118
+ {
119
+ "internalType": "bool",
120
+ "name": "dependencyFullyOnChain",
121
+ "type": "bool"
122
+ },
123
+ {
124
+ "internalType": "bool",
125
+ "name": "injectsDecentralizedStorageNetworkAssets",
126
+ "type": "bool"
127
+ },
128
+ {
129
+ "internalType": "bool",
130
+ "name": "hasOffChainFlexDepRegDependencies",
131
+ "type": "bool"
132
+ }
133
+ ],
134
+ "stateMutability": "view",
135
+ "type": "function"
136
+ },
137
+ {
138
+ "inputs": [
139
+ {
140
+ "internalType": "address",
141
+ "name": "coreContract",
142
+ "type": "address"
143
+ },
144
+ {
145
+ "internalType": "uint256",
146
+ "name": "projectId",
147
+ "type": "uint256"
148
+ }
149
+ ],
150
+ "name": "getProjectScript",
151
+ "outputs": [
152
+ {
153
+ "internalType": "string",
154
+ "name": "",
155
+ "type": "string"
156
+ }
157
+ ],
158
+ "stateMutability": "view",
159
+ "type": "function"
160
+ },
161
+ {
162
+ "inputs": [
163
+ {
164
+ "internalType": "address",
165
+ "name": "coreContract",
166
+ "type": "address"
167
+ },
168
+ {
169
+ "internalType": "uint256",
170
+ "name": "tokenId",
171
+ "type": "uint256"
172
+ }
173
+ ],
174
+ "name": "getTokenHtml",
175
+ "outputs": [
176
+ {
177
+ "internalType": "string",
178
+ "name": "",
179
+ "type": "string"
180
+ }
181
+ ],
182
+ "stateMutability": "view",
183
+ "type": "function"
184
+ },
185
+ {
186
+ "inputs": [
187
+ {
188
+ "internalType": "address",
189
+ "name": "coreContract",
190
+ "type": "address"
191
+ },
192
+ {
193
+ "internalType": "uint256",
194
+ "name": "tokenId",
195
+ "type": "uint256"
196
+ }
197
+ ],
198
+ "name": "getTokenHtmlBase64EncodedDataUri",
199
+ "outputs": [
200
+ {
201
+ "internalType": "string",
202
+ "name": "",
203
+ "type": "string"
204
+ }
205
+ ],
206
+ "stateMutability": "view",
207
+ "type": "function"
208
+ },
209
+ {
210
+ "inputs": [],
211
+ "name": "gunzipScriptBytecodeAddress",
212
+ "outputs": [
213
+ {
214
+ "internalType": "address",
215
+ "name": "",
216
+ "type": "address"
217
+ }
218
+ ],
219
+ "stateMutability": "view",
220
+ "type": "function"
221
+ },
222
+ {
223
+ "inputs": [
224
+ {
225
+ "internalType": "address",
226
+ "name": "_dependencyRegistry",
227
+ "type": "address"
228
+ },
229
+ {
230
+ "internalType": "address",
231
+ "name": "_scriptyBuilder",
232
+ "type": "address"
233
+ },
234
+ {
235
+ "internalType": "address",
236
+ "name": "_gunzipScriptBytecodeAddress",
237
+ "type": "address"
238
+ },
239
+ {
240
+ "internalType": "address",
241
+ "name": "_universalBytecodeStorageReader",
242
+ "type": "address"
243
+ }
244
+ ],
245
+ "name": "initialize",
246
+ "outputs": [],
247
+ "stateMutability": "nonpayable",
248
+ "type": "function"
249
+ },
250
+ {
251
+ "inputs": [],
252
+ "name": "scriptyBuilder",
253
+ "outputs": [
254
+ {
255
+ "internalType": "contract IScriptyBuilderV2",
256
+ "name": "",
257
+ "type": "address"
258
+ }
259
+ ],
260
+ "stateMutability": "view",
261
+ "type": "function"
262
+ },
263
+ {
264
+ "inputs": [],
265
+ "name": "universalBytecodeStorageReader",
266
+ "outputs": [
267
+ {
268
+ "internalType": "contract IUniversalBytecodeStorageReader",
269
+ "name": "",
270
+ "type": "address"
271
+ }
272
+ ],
273
+ "stateMutability": "view",
274
+ "type": "function"
275
+ },
276
+ {
277
+ "inputs": [
278
+ {
279
+ "internalType": "address",
280
+ "name": "_dependencyRegistry",
281
+ "type": "address"
282
+ }
283
+ ],
284
+ "name": "updateDependencyRegistry",
285
+ "outputs": [],
286
+ "stateMutability": "nonpayable",
287
+ "type": "function"
288
+ },
289
+ {
290
+ "inputs": [
291
+ {
292
+ "internalType": "address",
293
+ "name": "_gunzipScriptBytecodeAddress",
294
+ "type": "address"
295
+ }
296
+ ],
297
+ "name": "updateGunzipScriptBytecodeAddress",
298
+ "outputs": [],
299
+ "stateMutability": "nonpayable",
300
+ "type": "function"
301
+ },
302
+ {
303
+ "inputs": [
304
+ {
305
+ "internalType": "address",
306
+ "name": "_scriptyBuilder",
307
+ "type": "address"
308
+ }
309
+ ],
310
+ "name": "updateScriptyBuilder",
311
+ "outputs": [],
312
+ "stateMutability": "nonpayable",
313
+ "type": "function"
314
+ },
315
+ {
316
+ "inputs": [
317
+ {
318
+ "internalType": "address",
319
+ "name": "_universalBytecodeStorageReader",
320
+ "type": "address"
321
+ }
322
+ ],
323
+ "name": "updateUniversalBytecodeStorageReader",
324
+ "outputs": [],
325
+ "stateMutability": "nonpayable",
326
+ "type": "function"
327
+ }
328
+ ],
329
+ "bytecode": "0x608060405234801561001057600080fd5b50614343806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ba5760003560e01c806307bb68fe146100bf578063147d31d6146100e857806317a85465146100fb57806320ac09441461010e57806347d15a45146101345780635ec9f5821461014957806362e5ade31461015c57806391a0d36d1461016f57806398979937146101825780639e31669514610195578063bc1e6aca146101a8578063beb2ab62146101bb578063d6f55602146101ed578063f8c8765e14610200575b600080fd5b6100d26100cd36600461363f565b610213565b6040516100df919061370e565b60405180910390f35b6100d26100f6366004613736565b61022f565b6100d2610109366004613736565b6102c3565b600054610127906201000090046001600160a01b031681565b6040516100df9190613762565b610147610142366004613776565b610307565b005b600254610127906001600160a01b031681565b61014761016a366004613776565b61034f565b600154610127906001600160a01b031681565b610147610190366004613776565b610397565b6101476101a3366004613776565b6103df565b6100d26101b6366004613736565b61042f565b6101ce6101c9366004613736565b610445565b60408051931515845291151560208401521515908201526060016100df565b600354610127906001600160a01b031681565b61014761020e366004613793565b610621565b606060006102286102238461080b565b61082a565b9392505050565b6060600061023d84846109d3565b600154604051635448d9af60e11b81529192506000916001600160a01b039091169063a891b35e90610273908590600401613920565b600060405180830381865afa158015610290573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102b8919081019061399e565b925050505b92915050565b606060006102d184846109d3565b600154604051636af6c46760e11b81529192506000916001600160a01b039091169063d5ed88ce90610273908590600401613920565b6103176347d15a4560e01b610f7d565b600280546001600160a01b0319166001600160a01b03831690811790915560405160008051602061419483398151915290600090a250565b61035f6362e5ade360e01b610f7d565b600180546001600160a01b0319166001600160a01b0383169081179091556040516000805160206142ee83398151915290600090a250565b6103a7639897993760e01b610f7d565b600380546001600160a01b0319166001600160a01b0383169081179091556040516000805160206142ae83398151915290600090a250565b6103ef639e31669560e01b610f7d565b6000805462010000600160b01b031916620100006001600160a01b03841690810291909117825560405190916000805160206142ce83398151915291a250565b6060600061043d8484611055565b949350505050565b6000806000806104db600060029054906101000a90046001600160a01b03166001600160a01b0316634a78a93288886040518363ffffffff1660e01b81526004016104919291906139d2565b600060405180830381865afa1580156104ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104d6919081019061399e565b61080b565b90506104e6816113a2565b93506104f186611453565b1561061957604051630ad2832960e41b8152600481018690526000906001600160a01b0388169063ad28329090602401602060405180830381865afa15801561053e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056291906139eb565b905060005b8181101561061657600061057c8989846114ce565b9050600081602001516003811115610596576105966137ef565b14806105b757506001816020015160038111156105b5576105b56137ef565b145b156105c5576001955061060d565b6003816020015160038111156105dd576105dd6137ef565b0361060d5760006105f1826000015161080b565b905060006105fe826113a2565b90508061060a57600196505b50505b50600101610567565b50505b509250925092565b600054610100900460ff16158080156106415750600054600160ff909116105b8061065b5750303b15801561065b575060005460ff166001145b6106c35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156106e6576000805461ff0019166101001790555b6000805462010000600160b01b031916620100006001600160a01b03888116918202929092178355600180546001600160a01b031990811689851617909155600280548216888516179055600380549091169286169290921790915560405190916000805160206142ce83398151915291a26040516001600160a01b038516906000805160206142ee83398151915290600090a26040516001600160a01b0384169060008051602061419483398151915290600090a26040516001600160a01b038316906000805160206142ae83398151915290600090a28015610804576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b8051600090829082036108215750600092915050565b50506020015190565b60008054604051632b345e2f60e11b815260048101849052606092916201000090046001600160a01b031690635668bc5e90602401602060405180830381865afa15801561087c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a091906139eb565b9050806000036108c0575050604080516020810190915260008152919050565b6000816001600160401b038111156108da576108da6135aa565b604051908082528060200260200182016040528015610903578160200160208202803683370190505b50905060005b828110156109bb5760005460405163dfa3be5360e01b8152620100009091046001600160a01b03169063dfa3be53906109489088908590600401613a04565b602060405180830381865afa158015610965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109899190613a12565b82828151811061099b5761099b613a2f565b6001600160a01b0390921660209283029190910190910152600101610909565b5060035461043d9082906001600160a01b0316611690565b6109db613502565b6109e483611719565b60006109ef836117d7565b6000805460405163253c549960e11b81529293509091610a2f916201000090046001600160a01b031690634a78a9329061049190899087906004016139d2565b9050600080610a3e87876117e6565b805191935091506000610a52826002613a5b565b6001600160401b03811115610a6957610a696135aa565b604051908082528060200260200182016040528015610aa257816020015b610a8f61351c565b815260200190600190039081610a875790505b509050604051806040016040528060078152602001661e39ba3cb6329f60c91b81525081600081518110610ad857610ad8613a2f565b6020026020010151608001819052506040518060c00160405280609481526020016141b46094913981600081518110610b1357610b13613a2f565b602002602001015160c00181905250604051806040016040528060088152602001671e17b9ba3cb6329f60c11b81525081600081518110610b5657610b56613a2f565b602002602001015160a0018190525083604051602001610b769190613a6e565b60405160208183030381529060405281600181518110610b9857610b98613a2f565b602002602001015160c00181905250600181600181518110610bbc57610bbc613a2f565b6020026020010151606001906004811115610bd957610bd96137ef565b90816004811115610bec57610bec6137ef565b90525060005b82811015610c6e576000801b848281518110610c1057610c10613a2f565b60200260200101510315610c6657610c66848281518110610c3357610c33613a2f565b602002602001015183836002610c499190613a5b565b81518110610c5957610c59613a2f565b6020026020010151611d48565b600101610bf2565b5060408051600480825260a08201909252600091816020015b610c8f61351c565b815260200190600190039081610c87579050509050610cbb8682600081518110610c5957610c59613a2f565b6040518060400160405280601681526020017567756e7a6970536372697074732d302e302e312e6a7360501b81525081600181518110610cfd57610cfd613a2f565b602002602001015160000181905250600281600181518110610d2157610d21613a2f565b6020026020010151606001906004811115610d3e57610d3e6137ef565b90816004811115610d5157610d516137ef565b905250600354600254604051630eacc5e760e31b81526001600160a01b03928316926375662f3892610d8892911690600401613762565b600060405180830381865afa158015610da5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610dcd919081019061399e565b81600181518110610de057610de0613a2f565b602002602001015160c001819052506000610dfa87611e83565b905072383937b1b2b9b9b4b73396b539a018971a171b60691b87146000610e218d8b611055565b6040805161010081018252600060e08201818152825260208083018290528351908101845281815292820192909252919250906060810182815260200184610e8957604051806040016040528060088152602001671e39b1b934b83a1f60c11b815250610ea3565b604051806060016040528060268152602001614248602691395b8152602001604051806040016040528060098152602001681e17b9b1b934b83a1f60b91b81525081526020018381525090508215610f1e578085600281518110610eef57610eef613a2f565b60200260200101819052508385600381518110610f0e57610f0e613a2f565b6020026020010181905250610f5d565b8085600381518110610f3257610f32613a2f565b60200260200101819052508385600281518110610f5157610f51613a2f565b60200260200101819052505b610f65613502565b95865250505050602082015298975050505050505050565b60005460405163230448b160e01b81523360048201523060248201526001600160e01b031983166044820152620100009091046001600160a01b03169063230448b1906064016020604051808303816000875af1158015610fe2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110069190613b23565b6110525760405162461bcd60e51b815260206004820181905260248201527f4f6e6c7920446570656e64656e637952656769737472792041646d696e41434c60448201526064016106ba565b50565b606061106083611719565b604051633ae7357560e21b8152600481018390526001600160a01b0384169063eb9cd5d490602401600060405180830381865afa9250505080156110c657506040513d6000823e601f3d908101601f191682016040526110c39190810190613b3e565b60015b1561120257806000036110ed576040518060200160405280600081525093505050506102bd565b6000816001600160401b03811115611107576111076135aa565b604051908082528060200260200182016040528015611130578160200160208202803683370190505b50905060005b828110156111df576040516358b9a5a960e01b81526001600160a01b038916906358b9a5a99061116c908a908590600401613a04565b602060405180830381865afa158015611189573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111ad9190613a12565b8282815181106111bf576111bf613a2f565b6001600160a01b0390921660209283029190910190910152600101611136565b506003546111f79082906001600160a01b0316611690565b9450505050506102bd565b604051634aa6d41760e01b8152600481018390526001600160a01b03841690634aa6d41790602401600060405180830381865afa92505050801561126857506040513d6000823e601f3d908101601f191682016040526112659190810190613baa565b60015b6112c35760405162461bcd60e51b815260206004820152602660248201527f556e61626c6520746f2072657472696576652070726f6a6563742073637269706044820152657420696e666f60d01b60648201526084016106ba565b806000036112e45760405180602001604052806000815250925050506102bd565b606060005b8281101561139757604051638c3c9cdd60e01b81526000906001600160a01b03891690638c3c9cdd90611322908a908690600401613a04565b600060405180830381865afa15801561133f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611367919081019061399e565b9050828160405160200161137c929190613bf0565b60408051601f198184030181529190529250506001016112e9565b5092506102bd915050565b6000646a73406e6160d81b8214806113c2575065737667406e6160d01b82145b156113cf57506001919050565b6000546040516312ffd9bb60e11b815260048101849052620100009091046001600160a01b0316906325ffb37690602401600060405180830381865afa15801561141d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114459190810190613c32565b509998505050505050505050565b6000816001600160a01b031663f6cd39e36040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156114b457506040513d6000823e601f3d908101601f191682016040526114b1919081019061399e565b60015b6114c057506000919050565b50600192915050565b919050565b6114fa604080516080810190915260608152602081016000815260006020820152606060409091015290565b6040805160a08101825260006080820181815282526020808301829052828401829052835190810190935282526060810191909152611538856121f1565b1561161457604051631321635b60e11b81526000906001600160a01b03871690632642c6b69061156e9088908890600401613a04565b600060405180830381865afa15801561158b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526115b39190810190613d46565b80518352602081015190915060018111156115d0576115d06137ef565b60038111156115e1576115e16137ef565b826020019060038111156115f7576115f76137ef565b9081600381111561160a5761160a6137ef565b815250505061043d565b604051631321635b60e11b81526001600160a01b03861690632642c6b6906116429087908790600401613a04565b600060405180830381865afa15801561165f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116879190810190613de3565b95945050505050565b604080516375662f3881526060810180835284519092601c830192019060206000805b838110156116fa576020810260200189015191508160048701526000806024888b5afa6116df57600080fd5b602080863e8451806040858a013e92909201916001016116b3565b5050601f198082018652603f9091011684016040525091949350505050565b6000546040516367514b0d60e11b8152620100009091046001600160a01b03169063cea2961a9061174e908490600401613762565b602060405180830381865afa15801561176b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061178f9190613b23565b6110525760405162461bcd60e51b8152602060048201526019602482015278155b9cdd5c1c1bdc9d19590818dbdc994818dbdb9d1c9858dd603a1b60448201526064016106ba565b60006102bd620f424083613eb3565b60608060006117f485611453565b905060008161180c5761180760026122cd565b611816565b61181660056122cd565b905060008261182e576118296002612321565b611838565b6118386005612321565b9050604051806040016040528060078152602001661d1bdad95b925960ca1b8152508260008151811061186d5761186d613a2f565b602002602001018190525061188b6118848761237a565b600061247a565b8160008151811061189e5761189e613a2f565b60200260200101819052506000806118b6898961252f565b915091508015611962576040518060400160405280600681526020016568617368657360d01b815250846001815181106118f2576118f2613a2f565b602002602001018190525060006119096001612321565b9050611917611884846126e7565b8160008151811061192a5761192a613a2f565b602002602001018190525061193e8161273e565b8460018151811061195157611951613a2f565b6020026020010181905250506119c8565b604051806040016040528060048152602001630d0c2e6d60e31b8152508460018151811061199257611992613a2f565b60209081029190910101526119a9611884836126e7565b836001815181106119bc576119bc613a2f565b60200260200101819052505b505060408051600081526020810190915293508215611d235760405180604001604052806017815260200176707265666572726564417277656176654761746577617960481b81525082600281518110611a2457611a24613a2f565b6020026020010181905250611a98876001600160a01b031663b7ba527d6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611a70573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611884919081019061399e565b81600281518110611aab57611aab613a2f565b602002602001018190525060405180604001604052806014815260200173707265666572726564495046534761746577617960601b81525082600381518110611af657611af6613a2f565b6020026020010181905250611b42876001600160a01b031663f6cd39e36040518163ffffffff1660e01b8152600401600060405180830381865afa158015611a70573d6000803e3d6000fd5b81600381518110611b5557611b55613a2f565b60200260200101819052506040518060400160405280601981526020017865787465726e616c4173736574446570656e64656e6369657360381b81525082600481518110611ba557611ba5613a2f565b60200260200101819052506000611bbb876117d7565b604051630ad2832960e41b8152600481018290529091506000906001600160a01b038a169063ad28329090602401602060405180830381865afa158015611c06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c2a91906139eb565b90506000611c3782612321565b9050816001600160401b03811115611c5157611c516135aa565b604051908082528060200260200182016040528015611c7a578160200160208202803683370190505b50965060005b82811015611cf7576000806000611c988e88866127b7565b919450925090508015611cc557808b8581518110611cb857611cb8613a2f565b6020026020010181815250505b611ccf83836129bf565b858581518110611ce157611ce1613a2f565b6020908102919091010152505050600101611c80565b50611d018161273e565b84600481518110611d1457611d14613a2f565b60200260200101819052505050505b6000611d2f83836129bf565b9050611d3a81612a09565b9550505050505b9250929050565b600080546040516312ffd9bb60e11b81526004810185905282916201000090046001600160a01b0316906325ffb37690602401600060405180830381865afa158015611d98573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611dc09190810190613c32565b98505050505050935050508062ffffff16600003611e64578151151580611df65760405180602001604052806000815250611e17565b82604051602001611e079190613ec7565b6040516020818303038152906040525b608085015280611e365760405180602001604052806000815250611e59565b604051806040016040528060098152602001681e17b9b1b934b83a1f60b91b8152505b60a085015250611e7d565b6000611e6f8561082a565b60c085015250600360608401525b50505050565b611e8b61351c565b6000805b6020811015611ed257838160208110611eaa57611eaa613a2f565b1a60f81b6001600160f81b031916600160fe1b03611eca57809150611ed2565b600101611e8f565b506000816001600160401b03811115611eed57611eed6135aa565b6040519080825280601f01601f191660200182016040528015611f17576020820181803683370190505b50905060005b82811015611f6c57848160208110611f3757611f37613a2f565b1a60f81b828281518110611f4d57611f4d613a2f565b60200101906001600160f81b031916908160001a905350600101611f1d565b5080516020808301919091206040805180820190915260028152616a7360f01b92019190915281907f537ca8e1d8994095d4798bd5c1d6a5c68b6bdd035a58016c4c4e2203c3f03c8681148061200057506040805180820190915260078152663130b13cb637b760c91b6020909101527f80fc2a93637f719e8c5bf02e19ce6b855b73728b3828e74b9f2de1cc24b10a7281145b806120465750604080518082019091526004815263746f6e6560e01b6020909101527f32029762dcd30b141c0c544124d67c0e97c5505aca799bacb546e6cb6b7c3b7e81145b8061208c57506040805180820190915260048152637a646f6760e01b6020909101527f9b9f837a8cf94ce22ddc5c8e87d6906cbb3214a06ed02ebfd98c16851e32d7b181145b806120db575060408051808201909152600d81526c70726f63657373696e672d6a7360981b6020909101527f6dc895a82502069c5beb699380320d7a4e9cf09e66884d96a05f39ed890634b281145b15612184576040805161010081018252600060e0820181815282526020808301829052835190810184528181529282019290925290606082019081526020018360405160200161212b9190613f25565b6040516020818303038152906040528152602001604051806040016040528060098152602001681e17b1b0b73b30b99f60b91b815250815260200160405180602001604052806000815250815250945050505050919050565b50506040805161010081018252600060e08201818152825260208083018290528351808201855282815283850152606083018290528351808201855282815260808401528351808201855282815260a08401528351908101909352825260c0810191909152949350505050565b600080826001600160a01b031663ae45ad986040518163ffffffff1660e01b8152600401600060405180830381865afa158015612232573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261225a919081019061399e565b6040517a08ecadc82e4e86e646286dee4caac64be8a9c8e929c8abe8c988ab602b1b6020820152909150603b0160405160208183030381529060405280519060200120816040516020016122ae9190613f6c565b6040516020818303038152906040528051906020012014915050919050565b6060816001600160401b038111156122e7576122e76135aa565b60405190808252806020026020018201604052801561231a57816020015b60608152602001906001900390816123055790505b5092915050565b6060816001600160401b0381111561233b5761233b6135aa565b60405190808252806020026020018201604052801561231a57816020015b612361613573565b8152602001906001900390816123595790505092915050565b6060816000036123a15750506040805180820190915260018152600360fc1b602082015290565b8160005b81156123cb57806123b581613f88565b91506123c49050600a83613eb3565b91506123a5565b6000816001600160401b038111156123e5576123e56135aa565b6040519080825280601f01601f19166020018201604052801561240f576020820181803683370190505b5090505b841561043d57612424600183613fa1565b9150612431600a86613fb4565b61243c906030613a5b565b60f81b81838151811061245157612451613a2f565b60200101906001600160f81b031916908160001a905350612473600a86613eb3565b9450612413565b612482613573565b6040805160c0810182526002815281516000808252602082810190945291928301916124be565b60608152602001906001900390816124a95790505b50815260200160006040519080825280602002602001820160405280156124ff57816020015b6124ec613573565b8152602001906001900390816124e45790505b508152602001836001811115612517576125176137ef565b81526020018481526020016000815250905092915050565b60405163188687dd60e21b81526004810182905260009081906001600160a01b0385169063621a1f7490602401602060405180830381865afa925050508015612595575060408051601f3d908101601f19168201909252612592918101906139eb565b60015b156125ad5780156125ab57915060009050611d41565b505b6040516309c6aaad60e21b8152600481018490526001600160a01b0385169063271aaab490602401600060405180830381865afa92505050801561261357506040513d6000823e601f3d908101601f191682016040526126109190810190613fc8565b60015b61265f5760405162461bcd60e51b815260206004820152601d60248201527f556e61626c6520746f20726574726965766520746f6b656e206861736800000060448201526064016106ba565b6000801b8160008151811061267657612676613a2f565b6020026020010151036126c05760405162461bcd60e51b8152602060048201526012602482015271092dcecc2d8d2c840e8ded6cadc40d0c2e6d60731b60448201526064016106ba565b806000815181106126d3576126d3613a2f565b602002602001015160019250925050611d41565b6060816000036127115750506040805180820190915260048152630307830360e41b602082015290565b8160005b8115612734578061272581613f88565b915050600882901c9150612715565b61043d8482612aeb565b612746613573565b6040805160c081018252600181528151600080825260208281019094529192830191612782565b606081526020019060019003908161276d5790505b508152602081018490526040016000815260200160405180602001604052806000815250815260200160008152509050919050565b60608060008060006127c96003612321565b905060006127d760036122cd565b905060006127e68a8a8a6114ce565b90506040518060400160405280600f81526020016e646570656e64656e63795f7479706560881b8152508260008151811061282357612823613a2f565b602002602001018190525061283e6118848260200151612c86565b8360008151811061285157612851613a2f565b60200260200101819052506040518060400160405280600381526020016218da5960ea1b8152508260018151811061288b5761288b613a2f565b60200260200101819052506128a58160000151600061247a565b836001815181106128b8576128b8613a2f565b6020026020010181905250604051806040016040528060048152602001636461746160e01b815250826002815181106128f3576128f3613a2f565b6020908102919091010152600281602001516003811115612916576129166137ef565b0361294d5761292a8160600151600161247a565b8360028151811061293d5761293d613a2f565b60200260200101819052506129b0565b61296760405180602001604052806000815250600161247a565b8360028151811061297a5761297a613a2f565b602090810291909101015260038160200151600381111561299d5761299d6137ef565b036129b05780516129ad9061080b565b93505b50989097509095509350505050565b6129c7613573565b506040805160c081018252600080825260208083019590955281830193909352606081018390528151938401909152818352608081019290925260a082015290565b6060600082516005811115612a2057612a206137ef565b03612a2e576102bd82612dae565b600182516005811115612a4357612a436137ef565b03612a51576102bd82612f15565b600282516005811115612a6657612a666137ef565b03612a7d576102bd82608001518360600151613038565b600382516005811115612a9257612a926137ef565b03612aa4576102bd8260a0015161306c565b600482516005811115612ab957612ab96137ef565b03612acb576102bd8260a00151613077565b6040805180820190915260048152631b9d5b1b60e21b60208201526102bd565b60606000612afa83600261406d565b612b05906002613a5b565b6001600160401b03811115612b1c57612b1c6135aa565b6040519080825280601f01601f191660200182016040528015612b46576020820181803683370190505b509050600360fc1b81600081518110612b6157612b61613a2f565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110612b9057612b90613a2f565b60200101906001600160f81b031916908160001a9053506000612bb484600261406d565b612bbf906001613a5b565b90505b6001811115612c37576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110612bf357612bf3613a2f565b1a60f81b828281518110612c0957612c09613a2f565b60200101906001600160f81b031916908160001a90535060049490941c93612c3081614084565b9050612bc2565b5083156102285760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016106ba565b60606000826003811115612c9c57612c9c6137ef565b03612cc15750506040805180820190915260048152634950465360e01b602082015290565b6001826003811115612cd557612cd56137ef565b03612cfd5750506040805180820190915260078152664152574541564560c81b602082015290565b6002826003811115612d1157612d116137ef565b03612d3957505060408051808201909152600781526627a721a420a4a760c91b602082015290565b6003826003811115612d4d57612d4d6137ef565b03612d8b57505060408051808201909152601e81527f4152545f424c4f434b535f444550454e44454e43595f52454749535452590000602082015290565b50506040805180820190915260078152662aa725a727aba760c91b602082015290565b6020810151516060906000816001600160401b03811115612dd157612dd16135aa565b604051908082528060200260200182016040528015612e0457816020015b6060815260200190600190039081612def5790505b50905060005b82811015612ee3576000612e1f600185613fa1565b8210612e3a5760405180602001604052806000815250612e55565b604051806040016040528060018152602001600b60fa1b8152505b905085602001518281518110612e6d57612e6d613a2f565b6020026020010151612e9b87604001518481518110612e8e57612e8e613a2f565b6020026020010151612a09565b82604051602001612eae9392919061409b565b604051602081830303815290604052838381518110612ecf57612ecf613a2f565b602090810291909101015250600101612e0a565b50612eed816130c4565b604051602001612efd91906140fd565b60405160208183030381529060405292505050919050565b6040810151516060906000816001600160401b03811115612f3857612f386135aa565b604051908082528060200260200182016040528015612f6b57816020015b6060815260200190600190039081612f565790505b50905060005b8281101561301e576000612f86600185613fa1565b8210612fa15760405180602001604052806000815250612fbc565b604051806040016040528060018152602001600b60fa1b8152505b9050612fd786604001518381518110612e8e57612e8e613a2f565b81604051602001612fe9929190613bf0565b60405160208183030381529060405283838151811061300a5761300a613a2f565b602090810291909101015250600101612f71565b50613028816130c4565b604051602001612efd9190614131565b6060600182600181111561304e5761304e6137ef565b036130635761305c83613204565b90506102bd565b61305c83613235565b60606102bd82613248565b6060600082116130a4576040518060400160405280600581526020016466616c736560d81b8152506102bd565b50506040805180820190915260048152637472756560e01b602082015290565b60606000805b8351811015613103578381815181106130e5576130e5613a2f565b602002602001015151826130f99190613a5b565b91506001016130ca565b506000816001600160401b0381111561311e5761311e6135aa565b6040519080825280601f01601f191660200182016040528015613148576020820181803683370190505b5090506020810160005b85518110156131fa57600086828151811061316f5761316f613a2f565b60200260200101519050600081519050600060208301905060006020836131969190613eb3565b905060006131a5602085613fb4565b905060005b828110156131c85783518852602097880197909301926001016131aa565b5080156131e9578251600019600160086020859003021b0119168752958601955b505060019093019250613152915050565b5090949350505050565b606061320f826132da565b60405160200161321f9190614165565b6040516020818303038152906040529050919050565b60608160405160200161321f9190614165565b606060006132558361342c565b60010190506000816001600160401b03811115613274576132746135aa565b6040519080825280601f01601f19166020018201604052801561329e576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846132a857509392505050565b606081516000036132f957505060408051602081019091526000815290565b600060405180606001604052806040815260200161426e60409139905060006003845160026133289190613a5b565b6133329190613eb3565b61333d90600461406d565b6001600160401b03811115613354576133546135aa565b6040519080825280601f01601f19166020018201604052801561337e576020820181803683370190505b509050600182016020820185865187015b808210156133ea576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f811685015184535060018301925061338f565b5050600386510660018114613406576002811461341957613421565b603d6001830353603d6002830353613421565b603d60018303535b509195945050505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061346b5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6904ee2d6d415b85acef8160201b8310613495576904ee2d6d415b85acef8160201b830492506020015b662386f26fc1000083106134b357662386f26fc10000830492506010015b6305f5e10083106134cb576305f5e100830492506008015b61271083106134df57612710830492506004015b606483106134f1576064830492506002015b600a83106102bd5760010192915050565b604051806040016040528060608152602001606081525090565b6040518060e001604052806060815260200160006001600160a01b031681526020016060815260200160006004811115613558576135586137ef565b81526020016060815260200160608152602001606081525090565b6040805160c08101909152806000815260606020820181905260408201819052016000815260200160608152602001600081525090565b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156135e2576135e26135aa565b60405290565b604051601f8201601f191681016001600160401b0381118282101715613610576136106135aa565b604052919050565b60006001600160401b03821115613631576136316135aa565b50601f01601f191660200190565b60006020828403121561365157600080fd5b81356001600160401b0381111561366757600080fd5b8201601f8101841361367857600080fd5b803561368b61368682613618565b6135e8565b8181528560208385010111156136a057600080fd5b81602084016020830137600091810160200191909152949350505050565b60005b838110156136d95781810151838201526020016136c1565b50506000910152565b600081518084526136fa8160208601602086016136be565b601f01601f19169290920160200192915050565b60208152600061022860208301846136e2565b6001600160a01b038116811461105257600080fd5b6000806040838503121561374957600080fd5b823561375481613721565b946020939093013593505050565b6001600160a01b0391909116815260200190565b60006020828403121561378857600080fd5b813561022881613721565b600080600080608085870312156137a957600080fd5b84356137b481613721565b935060208501356137c481613721565b925060408501356137d481613721565b915060608501356137e481613721565b939692955090935050565b634e487b7160e01b600052602160045260246000fd5b6005811061382357634e487b7160e01b600052602160045260246000fd5b9052565b600082825180855260208086019550808260051b84010181860160005b8481101561391357601f19868403018952815160e0815181865261386a828701826136e2565b838801516001600160a01b031687890152604080850151888303828a0152919350915061389783826136e2565b925050506060808301516138ad82880182613805565b5050608080830151868303828801526138c683826136e2565b9250505060a080830151868303828801526138e183826136e2565b9250505060c080830151925085820381870152506138ff81836136e2565b9a86019a9450505090830190600101613844565b5090979650505050505050565b60208152600082516040602084015261393c6060840182613827565b90506020840151601f198483030160408501526116878282613827565b600082601f83011261396a57600080fd5b815161397861368682613618565b81815284602083860101111561398d57600080fd5b61043d8260208301602087016136be565b6000602082840312156139b057600080fd5b81516001600160401b038111156139c657600080fd5b61043d84828501613959565b6001600160a01b03929092168252602082015260400190565b6000602082840312156139fd57600080fd5b5051919050565b918252602082015260400190565b600060208284031215613a2457600080fd5b815161022881613721565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156102bd576102bd613a45565b7b03632ba103a37b5b2b72230ba30901e902529a7a7173830b939b294360251b815260008251613aa581601c8501602087016136be565b7f602c20286b65792c2076616c756529203d3e206b6579203d3d3d202264617461601c9390910192830152507f222026262076616c756520213d3d206e756c6c203f2061746f622876616c7565603c8201526a29203a2076616c7565293b60a81b605c820152606701919050565b805180151581146114c957600080fd5b600060208284031215613b3557600080fd5b61022882613b13565b600080600060608486031215613b5357600080fd5b83516001600160401b0380821115613b6a57600080fd5b613b7687838801613959565b94506020860151915080821115613b8c57600080fd5b50613b9986828701613959565b925050604084015190509250925092565b60008060408385031215613bbd57600080fd5b82516001600160401b03811115613bd357600080fd5b613bdf85828601613959565b925050602083015190509250929050565b60008351613c028184602088016136be565b835190830190613c168183602088016136be565b01949350505050565b805162ffffff811681146114c957600080fd5b60008060008060008060008060006101208a8c031215613c5157600080fd5b89516001600160401b0380821115613c6857600080fd5b613c748d838e01613959565b9a5060208c0151915080821115613c8a57600080fd5b613c968d838e01613959565b995060408c0151915080821115613cac57600080fd5b613cb88d838e01613959565b9850613cc660608d01613c1f565b975060808c0151915080821115613cdc57600080fd5b613ce88d838e01613959565b9650613cf660a08d01613c1f565b955060c08c0151915080821115613d0c57600080fd5b50613d198c828d01613959565b935050613d2860e08b01613b13565b9150613d376101008b01613c1f565b90509295985092959850929598565b600060208284031215613d5857600080fd5b81516001600160401b0380821115613d6f57600080fd5b9083019060408286031215613d8357600080fd5b604051604081018181108382111715613d9e57613d9e6135aa565b604052825182811115613db057600080fd5b613dbc87828601613959565b8252506020830151925060028310613dd357600080fd5b6020810192909252509392505050565b600060208284031215613df557600080fd5b81516001600160401b0380821115613e0c57600080fd5b9083019060808286031215613e2057600080fd5b613e286135c0565b825182811115613e3757600080fd5b613e4387828601613959565b825250602083015160048110613e5857600080fd5b60208201526040830151613e6b81613721565b6040820152606083015182811115613e8257600080fd5b613e8e87828601613959565b60608301525095945050505050565b634e487b7160e01b600052601260045260246000fd5b600082613ec257613ec2613e9d565b500490565b7f3c73637269707420747970653d22746578742f6a61766173637269707422207381526339319e9160e11b602082015260008251613f0c8160248501602087016136be565b61111f60f11b6024939091019283015250602601919050565b6b3c63616e7661732069643d2760a01b815260008251613f4c81600c8501602087016136be565b6816b1b0b73b30b9939f60b91b600c939091019283015250601501919050565b60008251613f7e8184602087016136be565b9190910192915050565b600060018201613f9a57613f9a613a45565b5060010190565b818103818111156102bd576102bd613a45565b600082613fc357613fc3613e9d565b500690565b60006020808385031215613fdb57600080fd5b82516001600160401b0380821115613ff257600080fd5b818501915085601f83011261400657600080fd5b815181811115614018576140186135aa565b8060051b91506140298483016135e8565b818152918301840191848101908884111561404357600080fd5b938501935b8385101561406157845182529385019390850190614048565b98975050505050505050565b80820281158282048414176102bd576102bd613a45565b60008161409357614093613a45565b506000190190565b601160f91b815283516000906140b88160018501602089016136be565b61111d60f11b60019184019182015284516140da8160038401602089016136be565b84519101906140f08160038401602088016136be565b0160030195945050505050565b607b60f81b8152600082516141198160018501602087016136be565b607d60f81b6001939091019283015250600201919050565b605b60f81b81526000825161414d8160018501602087016136be565b605d60f81b6001939091019283015250600201919050565b6000601160f91b80835283516141828160018601602088016136be565b60019301928301525060020191905056fea57122d905019fb607156dac691de60c99cb9572308bdc2d3cccf45ae6358c7368746d6c7b6865696768743a313030257d626f64797b6d696e2d6865696768743a313030253b6d617267696e3a303b70616464696e673a307d63616e7661737b70616464696e673a303b6d617267696e3a6175746f3b646973706c61793a626c6f636b3b706f736974696f6e3a6162736f6c7574653b746f703a303b626f74746f6d3a303b6c6566743a303b72696768743a307d3c73637269707420747970653d276170706c69636174696f6e2f70726f63657373696e67273e4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f0b9c67948019a508c85a8b9abbe9b2ff80ab26c068bc4edb68425299f360be6ebe4e753d425b4c1f5320eb06d2cdf0e61e433fc39729093d8eee97cc139fd4a0d566016c5f23fe52a44459d0ca08c2b81f8411b49f6bbe69ea100611564bb6c5a264697066735822122030230f911e3b5947202f0739df97e880c26f9a7ef76496e760f7f9f685476b7d64736f6c63430008160033",
330
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ba5760003560e01c806307bb68fe146100bf578063147d31d6146100e857806317a85465146100fb57806320ac09441461010e57806347d15a45146101345780635ec9f5821461014957806362e5ade31461015c57806391a0d36d1461016f57806398979937146101825780639e31669514610195578063bc1e6aca146101a8578063beb2ab62146101bb578063d6f55602146101ed578063f8c8765e14610200575b600080fd5b6100d26100cd36600461363f565b610213565b6040516100df919061370e565b60405180910390f35b6100d26100f6366004613736565b61022f565b6100d2610109366004613736565b6102c3565b600054610127906201000090046001600160a01b031681565b6040516100df9190613762565b610147610142366004613776565b610307565b005b600254610127906001600160a01b031681565b61014761016a366004613776565b61034f565b600154610127906001600160a01b031681565b610147610190366004613776565b610397565b6101476101a3366004613776565b6103df565b6100d26101b6366004613736565b61042f565b6101ce6101c9366004613736565b610445565b60408051931515845291151560208401521515908201526060016100df565b600354610127906001600160a01b031681565b61014761020e366004613793565b610621565b606060006102286102238461080b565b61082a565b9392505050565b6060600061023d84846109d3565b600154604051635448d9af60e11b81529192506000916001600160a01b039091169063a891b35e90610273908590600401613920565b600060405180830381865afa158015610290573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102b8919081019061399e565b925050505b92915050565b606060006102d184846109d3565b600154604051636af6c46760e11b81529192506000916001600160a01b039091169063d5ed88ce90610273908590600401613920565b6103176347d15a4560e01b610f7d565b600280546001600160a01b0319166001600160a01b03831690811790915560405160008051602061419483398151915290600090a250565b61035f6362e5ade360e01b610f7d565b600180546001600160a01b0319166001600160a01b0383169081179091556040516000805160206142ee83398151915290600090a250565b6103a7639897993760e01b610f7d565b600380546001600160a01b0319166001600160a01b0383169081179091556040516000805160206142ae83398151915290600090a250565b6103ef639e31669560e01b610f7d565b6000805462010000600160b01b031916620100006001600160a01b03841690810291909117825560405190916000805160206142ce83398151915291a250565b6060600061043d8484611055565b949350505050565b6000806000806104db600060029054906101000a90046001600160a01b03166001600160a01b0316634a78a93288886040518363ffffffff1660e01b81526004016104919291906139d2565b600060405180830381865afa1580156104ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104d6919081019061399e565b61080b565b90506104e6816113a2565b93506104f186611453565b1561061957604051630ad2832960e41b8152600481018690526000906001600160a01b0388169063ad28329090602401602060405180830381865afa15801561053e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056291906139eb565b905060005b8181101561061657600061057c8989846114ce565b9050600081602001516003811115610596576105966137ef565b14806105b757506001816020015160038111156105b5576105b56137ef565b145b156105c5576001955061060d565b6003816020015160038111156105dd576105dd6137ef565b0361060d5760006105f1826000015161080b565b905060006105fe826113a2565b90508061060a57600196505b50505b50600101610567565b50505b509250925092565b600054610100900460ff16158080156106415750600054600160ff909116105b8061065b5750303b15801561065b575060005460ff166001145b6106c35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156106e6576000805461ff0019166101001790555b6000805462010000600160b01b031916620100006001600160a01b03888116918202929092178355600180546001600160a01b031990811689851617909155600280548216888516179055600380549091169286169290921790915560405190916000805160206142ce83398151915291a26040516001600160a01b038516906000805160206142ee83398151915290600090a26040516001600160a01b0384169060008051602061419483398151915290600090a26040516001600160a01b038316906000805160206142ae83398151915290600090a28015610804576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b8051600090829082036108215750600092915050565b50506020015190565b60008054604051632b345e2f60e11b815260048101849052606092916201000090046001600160a01b031690635668bc5e90602401602060405180830381865afa15801561087c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a091906139eb565b9050806000036108c0575050604080516020810190915260008152919050565b6000816001600160401b038111156108da576108da6135aa565b604051908082528060200260200182016040528015610903578160200160208202803683370190505b50905060005b828110156109bb5760005460405163dfa3be5360e01b8152620100009091046001600160a01b03169063dfa3be53906109489088908590600401613a04565b602060405180830381865afa158015610965573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109899190613a12565b82828151811061099b5761099b613a2f565b6001600160a01b0390921660209283029190910190910152600101610909565b5060035461043d9082906001600160a01b0316611690565b6109db613502565b6109e483611719565b60006109ef836117d7565b6000805460405163253c549960e11b81529293509091610a2f916201000090046001600160a01b031690634a78a9329061049190899087906004016139d2565b9050600080610a3e87876117e6565b805191935091506000610a52826002613a5b565b6001600160401b03811115610a6957610a696135aa565b604051908082528060200260200182016040528015610aa257816020015b610a8f61351c565b815260200190600190039081610a875790505b509050604051806040016040528060078152602001661e39ba3cb6329f60c91b81525081600081518110610ad857610ad8613a2f565b6020026020010151608001819052506040518060c00160405280609481526020016141b46094913981600081518110610b1357610b13613a2f565b602002602001015160c00181905250604051806040016040528060088152602001671e17b9ba3cb6329f60c11b81525081600081518110610b5657610b56613a2f565b602002602001015160a0018190525083604051602001610b769190613a6e565b60405160208183030381529060405281600181518110610b9857610b98613a2f565b602002602001015160c00181905250600181600181518110610bbc57610bbc613a2f565b6020026020010151606001906004811115610bd957610bd96137ef565b90816004811115610bec57610bec6137ef565b90525060005b82811015610c6e576000801b848281518110610c1057610c10613a2f565b60200260200101510315610c6657610c66848281518110610c3357610c33613a2f565b602002602001015183836002610c499190613a5b565b81518110610c5957610c59613a2f565b6020026020010151611d48565b600101610bf2565b5060408051600480825260a08201909252600091816020015b610c8f61351c565b815260200190600190039081610c87579050509050610cbb8682600081518110610c5957610c59613a2f565b6040518060400160405280601681526020017567756e7a6970536372697074732d302e302e312e6a7360501b81525081600181518110610cfd57610cfd613a2f565b602002602001015160000181905250600281600181518110610d2157610d21613a2f565b6020026020010151606001906004811115610d3e57610d3e6137ef565b90816004811115610d5157610d516137ef565b905250600354600254604051630eacc5e760e31b81526001600160a01b03928316926375662f3892610d8892911690600401613762565b600060405180830381865afa158015610da5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610dcd919081019061399e565b81600181518110610de057610de0613a2f565b602002602001015160c001819052506000610dfa87611e83565b905072383937b1b2b9b9b4b73396b539a018971a171b60691b87146000610e218d8b611055565b6040805161010081018252600060e08201818152825260208083018290528351908101845281815292820192909252919250906060810182815260200184610e8957604051806040016040528060088152602001671e39b1b934b83a1f60c11b815250610ea3565b604051806060016040528060268152602001614248602691395b8152602001604051806040016040528060098152602001681e17b9b1b934b83a1f60b91b81525081526020018381525090508215610f1e578085600281518110610eef57610eef613a2f565b60200260200101819052508385600381518110610f0e57610f0e613a2f565b6020026020010181905250610f5d565b8085600381518110610f3257610f32613a2f565b60200260200101819052508385600281518110610f5157610f51613a2f565b60200260200101819052505b610f65613502565b95865250505050602082015298975050505050505050565b60005460405163230448b160e01b81523360048201523060248201526001600160e01b031983166044820152620100009091046001600160a01b03169063230448b1906064016020604051808303816000875af1158015610fe2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110069190613b23565b6110525760405162461bcd60e51b815260206004820181905260248201527f4f6e6c7920446570656e64656e637952656769737472792041646d696e41434c60448201526064016106ba565b50565b606061106083611719565b604051633ae7357560e21b8152600481018390526001600160a01b0384169063eb9cd5d490602401600060405180830381865afa9250505080156110c657506040513d6000823e601f3d908101601f191682016040526110c39190810190613b3e565b60015b1561120257806000036110ed576040518060200160405280600081525093505050506102bd565b6000816001600160401b03811115611107576111076135aa565b604051908082528060200260200182016040528015611130578160200160208202803683370190505b50905060005b828110156111df576040516358b9a5a960e01b81526001600160a01b038916906358b9a5a99061116c908a908590600401613a04565b602060405180830381865afa158015611189573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111ad9190613a12565b8282815181106111bf576111bf613a2f565b6001600160a01b0390921660209283029190910190910152600101611136565b506003546111f79082906001600160a01b0316611690565b9450505050506102bd565b604051634aa6d41760e01b8152600481018390526001600160a01b03841690634aa6d41790602401600060405180830381865afa92505050801561126857506040513d6000823e601f3d908101601f191682016040526112659190810190613baa565b60015b6112c35760405162461bcd60e51b815260206004820152602660248201527f556e61626c6520746f2072657472696576652070726f6a6563742073637269706044820152657420696e666f60d01b60648201526084016106ba565b806000036112e45760405180602001604052806000815250925050506102bd565b606060005b8281101561139757604051638c3c9cdd60e01b81526000906001600160a01b03891690638c3c9cdd90611322908a908690600401613a04565b600060405180830381865afa15801561133f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611367919081019061399e565b9050828160405160200161137c929190613bf0565b60408051601f198184030181529190529250506001016112e9565b5092506102bd915050565b6000646a73406e6160d81b8214806113c2575065737667406e6160d01b82145b156113cf57506001919050565b6000546040516312ffd9bb60e11b815260048101849052620100009091046001600160a01b0316906325ffb37690602401600060405180830381865afa15801561141d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114459190810190613c32565b509998505050505050505050565b6000816001600160a01b031663f6cd39e36040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156114b457506040513d6000823e601f3d908101601f191682016040526114b1919081019061399e565b60015b6114c057506000919050565b50600192915050565b919050565b6114fa604080516080810190915260608152602081016000815260006020820152606060409091015290565b6040805160a08101825260006080820181815282526020808301829052828401829052835190810190935282526060810191909152611538856121f1565b1561161457604051631321635b60e11b81526000906001600160a01b03871690632642c6b69061156e9088908890600401613a04565b600060405180830381865afa15801561158b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526115b39190810190613d46565b80518352602081015190915060018111156115d0576115d06137ef565b60038111156115e1576115e16137ef565b826020019060038111156115f7576115f76137ef565b9081600381111561160a5761160a6137ef565b815250505061043d565b604051631321635b60e11b81526001600160a01b03861690632642c6b6906116429087908790600401613a04565b600060405180830381865afa15801561165f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116879190810190613de3565b95945050505050565b604080516375662f3881526060810180835284519092601c830192019060206000805b838110156116fa576020810260200189015191508160048701526000806024888b5afa6116df57600080fd5b602080863e8451806040858a013e92909201916001016116b3565b5050601f198082018652603f9091011684016040525091949350505050565b6000546040516367514b0d60e11b8152620100009091046001600160a01b03169063cea2961a9061174e908490600401613762565b602060405180830381865afa15801561176b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061178f9190613b23565b6110525760405162461bcd60e51b8152602060048201526019602482015278155b9cdd5c1c1bdc9d19590818dbdc994818dbdb9d1c9858dd603a1b60448201526064016106ba565b60006102bd620f424083613eb3565b60608060006117f485611453565b905060008161180c5761180760026122cd565b611816565b61181660056122cd565b905060008261182e576118296002612321565b611838565b6118386005612321565b9050604051806040016040528060078152602001661d1bdad95b925960ca1b8152508260008151811061186d5761186d613a2f565b602002602001018190525061188b6118848761237a565b600061247a565b8160008151811061189e5761189e613a2f565b60200260200101819052506000806118b6898961252f565b915091508015611962576040518060400160405280600681526020016568617368657360d01b815250846001815181106118f2576118f2613a2f565b602002602001018190525060006119096001612321565b9050611917611884846126e7565b8160008151811061192a5761192a613a2f565b602002602001018190525061193e8161273e565b8460018151811061195157611951613a2f565b6020026020010181905250506119c8565b604051806040016040528060048152602001630d0c2e6d60e31b8152508460018151811061199257611992613a2f565b60209081029190910101526119a9611884836126e7565b836001815181106119bc576119bc613a2f565b60200260200101819052505b505060408051600081526020810190915293508215611d235760405180604001604052806017815260200176707265666572726564417277656176654761746577617960481b81525082600281518110611a2457611a24613a2f565b6020026020010181905250611a98876001600160a01b031663b7ba527d6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611a70573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611884919081019061399e565b81600281518110611aab57611aab613a2f565b602002602001018190525060405180604001604052806014815260200173707265666572726564495046534761746577617960601b81525082600381518110611af657611af6613a2f565b6020026020010181905250611b42876001600160a01b031663f6cd39e36040518163ffffffff1660e01b8152600401600060405180830381865afa158015611a70573d6000803e3d6000fd5b81600381518110611b5557611b55613a2f565b60200260200101819052506040518060400160405280601981526020017865787465726e616c4173736574446570656e64656e6369657360381b81525082600481518110611ba557611ba5613a2f565b60200260200101819052506000611bbb876117d7565b604051630ad2832960e41b8152600481018290529091506000906001600160a01b038a169063ad28329090602401602060405180830381865afa158015611c06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c2a91906139eb565b90506000611c3782612321565b9050816001600160401b03811115611c5157611c516135aa565b604051908082528060200260200182016040528015611c7a578160200160208202803683370190505b50965060005b82811015611cf7576000806000611c988e88866127b7565b919450925090508015611cc557808b8581518110611cb857611cb8613a2f565b6020026020010181815250505b611ccf83836129bf565b858581518110611ce157611ce1613a2f565b6020908102919091010152505050600101611c80565b50611d018161273e565b84600481518110611d1457611d14613a2f565b60200260200101819052505050505b6000611d2f83836129bf565b9050611d3a81612a09565b9550505050505b9250929050565b600080546040516312ffd9bb60e11b81526004810185905282916201000090046001600160a01b0316906325ffb37690602401600060405180830381865afa158015611d98573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611dc09190810190613c32565b98505050505050935050508062ffffff16600003611e64578151151580611df65760405180602001604052806000815250611e17565b82604051602001611e079190613ec7565b6040516020818303038152906040525b608085015280611e365760405180602001604052806000815250611e59565b604051806040016040528060098152602001681e17b9b1b934b83a1f60b91b8152505b60a085015250611e7d565b6000611e6f8561082a565b60c085015250600360608401525b50505050565b611e8b61351c565b6000805b6020811015611ed257838160208110611eaa57611eaa613a2f565b1a60f81b6001600160f81b031916600160fe1b03611eca57809150611ed2565b600101611e8f565b506000816001600160401b03811115611eed57611eed6135aa565b6040519080825280601f01601f191660200182016040528015611f17576020820181803683370190505b50905060005b82811015611f6c57848160208110611f3757611f37613a2f565b1a60f81b828281518110611f4d57611f4d613a2f565b60200101906001600160f81b031916908160001a905350600101611f1d565b5080516020808301919091206040805180820190915260028152616a7360f01b92019190915281907f537ca8e1d8994095d4798bd5c1d6a5c68b6bdd035a58016c4c4e2203c3f03c8681148061200057506040805180820190915260078152663130b13cb637b760c91b6020909101527f80fc2a93637f719e8c5bf02e19ce6b855b73728b3828e74b9f2de1cc24b10a7281145b806120465750604080518082019091526004815263746f6e6560e01b6020909101527f32029762dcd30b141c0c544124d67c0e97c5505aca799bacb546e6cb6b7c3b7e81145b8061208c57506040805180820190915260048152637a646f6760e01b6020909101527f9b9f837a8cf94ce22ddc5c8e87d6906cbb3214a06ed02ebfd98c16851e32d7b181145b806120db575060408051808201909152600d81526c70726f63657373696e672d6a7360981b6020909101527f6dc895a82502069c5beb699380320d7a4e9cf09e66884d96a05f39ed890634b281145b15612184576040805161010081018252600060e0820181815282526020808301829052835190810184528181529282019290925290606082019081526020018360405160200161212b9190613f25565b6040516020818303038152906040528152602001604051806040016040528060098152602001681e17b1b0b73b30b99f60b91b815250815260200160405180602001604052806000815250815250945050505050919050565b50506040805161010081018252600060e08201818152825260208083018290528351808201855282815283850152606083018290528351808201855282815260808401528351808201855282815260a08401528351908101909352825260c0810191909152949350505050565b600080826001600160a01b031663ae45ad986040518163ffffffff1660e01b8152600401600060405180830381865afa158015612232573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261225a919081019061399e565b6040517a08ecadc82e4e86e646286dee4caac64be8a9c8e929c8abe8c988ab602b1b6020820152909150603b0160405160208183030381529060405280519060200120816040516020016122ae9190613f6c565b6040516020818303038152906040528051906020012014915050919050565b6060816001600160401b038111156122e7576122e76135aa565b60405190808252806020026020018201604052801561231a57816020015b60608152602001906001900390816123055790505b5092915050565b6060816001600160401b0381111561233b5761233b6135aa565b60405190808252806020026020018201604052801561231a57816020015b612361613573565b8152602001906001900390816123595790505092915050565b6060816000036123a15750506040805180820190915260018152600360fc1b602082015290565b8160005b81156123cb57806123b581613f88565b91506123c49050600a83613eb3565b91506123a5565b6000816001600160401b038111156123e5576123e56135aa565b6040519080825280601f01601f19166020018201604052801561240f576020820181803683370190505b5090505b841561043d57612424600183613fa1565b9150612431600a86613fb4565b61243c906030613a5b565b60f81b81838151811061245157612451613a2f565b60200101906001600160f81b031916908160001a905350612473600a86613eb3565b9450612413565b612482613573565b6040805160c0810182526002815281516000808252602082810190945291928301916124be565b60608152602001906001900390816124a95790505b50815260200160006040519080825280602002602001820160405280156124ff57816020015b6124ec613573565b8152602001906001900390816124e45790505b508152602001836001811115612517576125176137ef565b81526020018481526020016000815250905092915050565b60405163188687dd60e21b81526004810182905260009081906001600160a01b0385169063621a1f7490602401602060405180830381865afa925050508015612595575060408051601f3d908101601f19168201909252612592918101906139eb565b60015b156125ad5780156125ab57915060009050611d41565b505b6040516309c6aaad60e21b8152600481018490526001600160a01b0385169063271aaab490602401600060405180830381865afa92505050801561261357506040513d6000823e601f3d908101601f191682016040526126109190810190613fc8565b60015b61265f5760405162461bcd60e51b815260206004820152601d60248201527f556e61626c6520746f20726574726965766520746f6b656e206861736800000060448201526064016106ba565b6000801b8160008151811061267657612676613a2f565b6020026020010151036126c05760405162461bcd60e51b8152602060048201526012602482015271092dcecc2d8d2c840e8ded6cadc40d0c2e6d60731b60448201526064016106ba565b806000815181106126d3576126d3613a2f565b602002602001015160019250925050611d41565b6060816000036127115750506040805180820190915260048152630307830360e41b602082015290565b8160005b8115612734578061272581613f88565b915050600882901c9150612715565b61043d8482612aeb565b612746613573565b6040805160c081018252600181528151600080825260208281019094529192830191612782565b606081526020019060019003908161276d5790505b508152602081018490526040016000815260200160405180602001604052806000815250815260200160008152509050919050565b60608060008060006127c96003612321565b905060006127d760036122cd565b905060006127e68a8a8a6114ce565b90506040518060400160405280600f81526020016e646570656e64656e63795f7479706560881b8152508260008151811061282357612823613a2f565b602002602001018190525061283e6118848260200151612c86565b8360008151811061285157612851613a2f565b60200260200101819052506040518060400160405280600381526020016218da5960ea1b8152508260018151811061288b5761288b613a2f565b60200260200101819052506128a58160000151600061247a565b836001815181106128b8576128b8613a2f565b6020026020010181905250604051806040016040528060048152602001636461746160e01b815250826002815181106128f3576128f3613a2f565b6020908102919091010152600281602001516003811115612916576129166137ef565b0361294d5761292a8160600151600161247a565b8360028151811061293d5761293d613a2f565b60200260200101819052506129b0565b61296760405180602001604052806000815250600161247a565b8360028151811061297a5761297a613a2f565b602090810291909101015260038160200151600381111561299d5761299d6137ef565b036129b05780516129ad9061080b565b93505b50989097509095509350505050565b6129c7613573565b506040805160c081018252600080825260208083019590955281830193909352606081018390528151938401909152818352608081019290925260a082015290565b6060600082516005811115612a2057612a206137ef565b03612a2e576102bd82612dae565b600182516005811115612a4357612a436137ef565b03612a51576102bd82612f15565b600282516005811115612a6657612a666137ef565b03612a7d576102bd82608001518360600151613038565b600382516005811115612a9257612a926137ef565b03612aa4576102bd8260a0015161306c565b600482516005811115612ab957612ab96137ef565b03612acb576102bd8260a00151613077565b6040805180820190915260048152631b9d5b1b60e21b60208201526102bd565b60606000612afa83600261406d565b612b05906002613a5b565b6001600160401b03811115612b1c57612b1c6135aa565b6040519080825280601f01601f191660200182016040528015612b46576020820181803683370190505b509050600360fc1b81600081518110612b6157612b61613a2f565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110612b9057612b90613a2f565b60200101906001600160f81b031916908160001a9053506000612bb484600261406d565b612bbf906001613a5b565b90505b6001811115612c37576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110612bf357612bf3613a2f565b1a60f81b828281518110612c0957612c09613a2f565b60200101906001600160f81b031916908160001a90535060049490941c93612c3081614084565b9050612bc2565b5083156102285760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016106ba565b60606000826003811115612c9c57612c9c6137ef565b03612cc15750506040805180820190915260048152634950465360e01b602082015290565b6001826003811115612cd557612cd56137ef565b03612cfd5750506040805180820190915260078152664152574541564560c81b602082015290565b6002826003811115612d1157612d116137ef565b03612d3957505060408051808201909152600781526627a721a420a4a760c91b602082015290565b6003826003811115612d4d57612d4d6137ef565b03612d8b57505060408051808201909152601e81527f4152545f424c4f434b535f444550454e44454e43595f52454749535452590000602082015290565b50506040805180820190915260078152662aa725a727aba760c91b602082015290565b6020810151516060906000816001600160401b03811115612dd157612dd16135aa565b604051908082528060200260200182016040528015612e0457816020015b6060815260200190600190039081612def5790505b50905060005b82811015612ee3576000612e1f600185613fa1565b8210612e3a5760405180602001604052806000815250612e55565b604051806040016040528060018152602001600b60fa1b8152505b905085602001518281518110612e6d57612e6d613a2f565b6020026020010151612e9b87604001518481518110612e8e57612e8e613a2f565b6020026020010151612a09565b82604051602001612eae9392919061409b565b604051602081830303815290604052838381518110612ecf57612ecf613a2f565b602090810291909101015250600101612e0a565b50612eed816130c4565b604051602001612efd91906140fd565b60405160208183030381529060405292505050919050565b6040810151516060906000816001600160401b03811115612f3857612f386135aa565b604051908082528060200260200182016040528015612f6b57816020015b6060815260200190600190039081612f565790505b50905060005b8281101561301e576000612f86600185613fa1565b8210612fa15760405180602001604052806000815250612fbc565b604051806040016040528060018152602001600b60fa1b8152505b9050612fd786604001518381518110612e8e57612e8e613a2f565b81604051602001612fe9929190613bf0565b60405160208183030381529060405283838151811061300a5761300a613a2f565b602090810291909101015250600101612f71565b50613028816130c4565b604051602001612efd9190614131565b6060600182600181111561304e5761304e6137ef565b036130635761305c83613204565b90506102bd565b61305c83613235565b60606102bd82613248565b6060600082116130a4576040518060400160405280600581526020016466616c736560d81b8152506102bd565b50506040805180820190915260048152637472756560e01b602082015290565b60606000805b8351811015613103578381815181106130e5576130e5613a2f565b602002602001015151826130f99190613a5b565b91506001016130ca565b506000816001600160401b0381111561311e5761311e6135aa565b6040519080825280601f01601f191660200182016040528015613148576020820181803683370190505b5090506020810160005b85518110156131fa57600086828151811061316f5761316f613a2f565b60200260200101519050600081519050600060208301905060006020836131969190613eb3565b905060006131a5602085613fb4565b905060005b828110156131c85783518852602097880197909301926001016131aa565b5080156131e9578251600019600160086020859003021b0119168752958601955b505060019093019250613152915050565b5090949350505050565b606061320f826132da565b60405160200161321f9190614165565b6040516020818303038152906040529050919050565b60608160405160200161321f9190614165565b606060006132558361342c565b60010190506000816001600160401b03811115613274576132746135aa565b6040519080825280601f01601f19166020018201604052801561329e576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846132a857509392505050565b606081516000036132f957505060408051602081019091526000815290565b600060405180606001604052806040815260200161426e60409139905060006003845160026133289190613a5b565b6133329190613eb3565b61333d90600461406d565b6001600160401b03811115613354576133546135aa565b6040519080825280601f01601f19166020018201604052801561337e576020820181803683370190505b509050600182016020820185865187015b808210156133ea576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f811685015184535060018301925061338f565b5050600386510660018114613406576002811461341957613421565b603d6001830353603d6002830353613421565b603d60018303535b509195945050505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061346b5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6904ee2d6d415b85acef8160201b8310613495576904ee2d6d415b85acef8160201b830492506020015b662386f26fc1000083106134b357662386f26fc10000830492506010015b6305f5e10083106134cb576305f5e100830492506008015b61271083106134df57612710830492506004015b606483106134f1576064830492506002015b600a83106102bd5760010192915050565b604051806040016040528060608152602001606081525090565b6040518060e001604052806060815260200160006001600160a01b031681526020016060815260200160006004811115613558576135586137ef565b81526020016060815260200160608152602001606081525090565b6040805160c08101909152806000815260606020820181905260408201819052016000815260200160608152602001600081525090565b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156135e2576135e26135aa565b60405290565b604051601f8201601f191681016001600160401b0381118282101715613610576136106135aa565b604052919050565b60006001600160401b03821115613631576136316135aa565b50601f01601f191660200190565b60006020828403121561365157600080fd5b81356001600160401b0381111561366757600080fd5b8201601f8101841361367857600080fd5b803561368b61368682613618565b6135e8565b8181528560208385010111156136a057600080fd5b81602084016020830137600091810160200191909152949350505050565b60005b838110156136d95781810151838201526020016136c1565b50506000910152565b600081518084526136fa8160208601602086016136be565b601f01601f19169290920160200192915050565b60208152600061022860208301846136e2565b6001600160a01b038116811461105257600080fd5b6000806040838503121561374957600080fd5b823561375481613721565b946020939093013593505050565b6001600160a01b0391909116815260200190565b60006020828403121561378857600080fd5b813561022881613721565b600080600080608085870312156137a957600080fd5b84356137b481613721565b935060208501356137c481613721565b925060408501356137d481613721565b915060608501356137e481613721565b939692955090935050565b634e487b7160e01b600052602160045260246000fd5b6005811061382357634e487b7160e01b600052602160045260246000fd5b9052565b600082825180855260208086019550808260051b84010181860160005b8481101561391357601f19868403018952815160e0815181865261386a828701826136e2565b838801516001600160a01b031687890152604080850151888303828a0152919350915061389783826136e2565b925050506060808301516138ad82880182613805565b5050608080830151868303828801526138c683826136e2565b9250505060a080830151868303828801526138e183826136e2565b9250505060c080830151925085820381870152506138ff81836136e2565b9a86019a9450505090830190600101613844565b5090979650505050505050565b60208152600082516040602084015261393c6060840182613827565b90506020840151601f198483030160408501526116878282613827565b600082601f83011261396a57600080fd5b815161397861368682613618565b81815284602083860101111561398d57600080fd5b61043d8260208301602087016136be565b6000602082840312156139b057600080fd5b81516001600160401b038111156139c657600080fd5b61043d84828501613959565b6001600160a01b03929092168252602082015260400190565b6000602082840312156139fd57600080fd5b5051919050565b918252602082015260400190565b600060208284031215613a2457600080fd5b815161022881613721565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156102bd576102bd613a45565b7b03632ba103a37b5b2b72230ba30901e902529a7a7173830b939b294360251b815260008251613aa581601c8501602087016136be565b7f602c20286b65792c2076616c756529203d3e206b6579203d3d3d202264617461601c9390910192830152507f222026262076616c756520213d3d206e756c6c203f2061746f622876616c7565603c8201526a29203a2076616c7565293b60a81b605c820152606701919050565b805180151581146114c957600080fd5b600060208284031215613b3557600080fd5b61022882613b13565b600080600060608486031215613b5357600080fd5b83516001600160401b0380821115613b6a57600080fd5b613b7687838801613959565b94506020860151915080821115613b8c57600080fd5b50613b9986828701613959565b925050604084015190509250925092565b60008060408385031215613bbd57600080fd5b82516001600160401b03811115613bd357600080fd5b613bdf85828601613959565b925050602083015190509250929050565b60008351613c028184602088016136be565b835190830190613c168183602088016136be565b01949350505050565b805162ffffff811681146114c957600080fd5b60008060008060008060008060006101208a8c031215613c5157600080fd5b89516001600160401b0380821115613c6857600080fd5b613c748d838e01613959565b9a5060208c0151915080821115613c8a57600080fd5b613c968d838e01613959565b995060408c0151915080821115613cac57600080fd5b613cb88d838e01613959565b9850613cc660608d01613c1f565b975060808c0151915080821115613cdc57600080fd5b613ce88d838e01613959565b9650613cf660a08d01613c1f565b955060c08c0151915080821115613d0c57600080fd5b50613d198c828d01613959565b935050613d2860e08b01613b13565b9150613d376101008b01613c1f565b90509295985092959850929598565b600060208284031215613d5857600080fd5b81516001600160401b0380821115613d6f57600080fd5b9083019060408286031215613d8357600080fd5b604051604081018181108382111715613d9e57613d9e6135aa565b604052825182811115613db057600080fd5b613dbc87828601613959565b8252506020830151925060028310613dd357600080fd5b6020810192909252509392505050565b600060208284031215613df557600080fd5b81516001600160401b0380821115613e0c57600080fd5b9083019060808286031215613e2057600080fd5b613e286135c0565b825182811115613e3757600080fd5b613e4387828601613959565b825250602083015160048110613e5857600080fd5b60208201526040830151613e6b81613721565b6040820152606083015182811115613e8257600080fd5b613e8e87828601613959565b60608301525095945050505050565b634e487b7160e01b600052601260045260246000fd5b600082613ec257613ec2613e9d565b500490565b7f3c73637269707420747970653d22746578742f6a61766173637269707422207381526339319e9160e11b602082015260008251613f0c8160248501602087016136be565b61111f60f11b6024939091019283015250602601919050565b6b3c63616e7661732069643d2760a01b815260008251613f4c81600c8501602087016136be565b6816b1b0b73b30b9939f60b91b600c939091019283015250601501919050565b60008251613f7e8184602087016136be565b9190910192915050565b600060018201613f9a57613f9a613a45565b5060010190565b818103818111156102bd576102bd613a45565b600082613fc357613fc3613e9d565b500690565b60006020808385031215613fdb57600080fd5b82516001600160401b0380821115613ff257600080fd5b818501915085601f83011261400657600080fd5b815181811115614018576140186135aa565b8060051b91506140298483016135e8565b818152918301840191848101908884111561404357600080fd5b938501935b8385101561406157845182529385019390850190614048565b98975050505050505050565b80820281158282048414176102bd576102bd613a45565b60008161409357614093613a45565b506000190190565b601160f91b815283516000906140b88160018501602089016136be565b61111d60f11b60019184019182015284516140da8160038401602089016136be565b84519101906140f08160038401602088016136be565b0160030195945050505050565b607b60f81b8152600082516141198160018501602087016136be565b607d60f81b6001939091019283015250600201919050565b605b60f81b81526000825161414d8160018501602087016136be565b605d60f81b6001939091019283015250600201919050565b6000601160f91b80835283516141828160018601602088016136be565b60019301928301525060020191905056fea57122d905019fb607156dac691de60c99cb9572308bdc2d3cccf45ae6358c7368746d6c7b6865696768743a313030257d626f64797b6d696e2d6865696768743a313030253b6d617267696e3a303b70616464696e673a307d63616e7661737b70616464696e673a303b6d617267696e3a6175746f3b646973706c61793a626c6f636b3b706f736974696f6e3a6162736f6c7574653b746f703a303b626f74746f6d3a303b6c6566743a303b72696768743a307d3c73637269707420747970653d276170706c69636174696f6e2f70726f63657373696e67273e4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f0b9c67948019a508c85a8b9abbe9b2ff80ab26c068bc4edb68425299f360be6ebe4e753d425b4c1f5320eb06d2cdf0e61e433fc39729093d8eee97cc139fd4a0d566016c5f23fe52a44459d0ca08c2b81f8411b49f6bbe69ea100611564bb6c5a264697066735822122030230f911e3b5947202f0739df97e880c26f9a7ef76496e760f7f9f685476b7d64736f6c63430008160033",
331
+ "linkReferences": {},
332
+ "deployedLinkReferences": {}
333
+ }
@@ -0,0 +1,47 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "ILegacyGenArt721CoreV2_PBAB_Flex",
4
+ "sourceName": "contracts/generator/GenArt721GeneratorV0.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "uint256",
10
+ "name": "_projectId",
11
+ "type": "uint256"
12
+ },
13
+ {
14
+ "internalType": "uint256",
15
+ "name": "_index",
16
+ "type": "uint256"
17
+ }
18
+ ],
19
+ "name": "projectExternalAssetDependencyByIndex",
20
+ "outputs": [
21
+ {
22
+ "components": [
23
+ {
24
+ "internalType": "string",
25
+ "name": "cid",
26
+ "type": "string"
27
+ },
28
+ {
29
+ "internalType": "enum ILegacyGenArt721CoreV2_PBAB_Flex.LegacyExternalAssetDependencyType",
30
+ "name": "dependencyType",
31
+ "type": "uint8"
32
+ }
33
+ ],
34
+ "internalType": "struct ILegacyGenArt721CoreV2_PBAB_Flex.LegacyExternalAssetDependencyWithoutData",
35
+ "name": "",
36
+ "type": "tuple"
37
+ }
38
+ ],
39
+ "stateMutability": "view",
40
+ "type": "function"
41
+ }
42
+ ],
43
+ "bytecode": "0x",
44
+ "deployedBytecode": "0x",
45
+ "linkReferences": {},
46
+ "deployedLinkReferences": {}
47
+ }