@artblocks/contracts 1.0.0 → 1.0.2

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 (106) hide show
  1. package/.env.example +8 -1
  2. package/README.md +44 -165
  3. package/artifacts/contracts/AdminACLV1.sol/AdminACLV1.json +2 -2
  4. package/artifacts/contracts/DependencyRegistryV0.sol/DependencyRegistryV0.json +2 -2
  5. package/artifacts/contracts/GenArt721CoreV3.sol/GenArt721CoreV3.json +2 -2
  6. package/artifacts/contracts/GenArt721CoreV3_Engine.sol/GenArt721CoreV3_Engine.json +2 -2
  7. package/artifacts/contracts/GenArt721CoreV3_Engine_Flex.sol/GenArt721CoreV3_Engine_Flex.json +2229 -0
  8. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV0.sol/MinterDAExpV0.json +2 -2
  9. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV1.sol/MinterDAExpV1.json +2 -2
  10. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV2.sol/MinterDAExpV2.json +2 -2
  11. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV3.sol/MinterDAExpV3.json +2 -2
  12. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +2 -2
  13. package/artifacts/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterDAExpSettlement}/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +3 -3
  14. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV0.sol/MinterDALinV0.json +2 -2
  15. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV1.sol/MinterDALinV1.json +2 -2
  16. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV2.sol/MinterDALinV2.json +2 -2
  17. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV3.sol/MinterDALinV3.json +2 -2
  18. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV0.sol/MinterHolderV0.json +2 -2
  19. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol/MinterHolderV1.json +2 -2
  20. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +2 -2
  21. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV3.sol/MinterHolderV3.json +2 -2
  22. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV0.sol/MinterMerkleV0.json +2 -2
  23. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol/MinterMerkleV1.json +2 -2
  24. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol/MinterMerkleV2.json +2 -2
  25. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV3.sol/MinterMerkleV3.json +2 -2
  26. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV4.sol/MinterMerkleV4.json +2 -2
  27. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV0.sol/MinterSetPriceV0.json +2 -2
  28. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV1.sol/MinterSetPriceV1.json +2 -2
  29. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +2 -2
  30. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +2 -2
  31. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V0.sol/MinterSetPriceERC20V0.json +2 -2
  32. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V1.sol/MinterSetPriceERC20V1.json +2 -2
  33. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +2 -2
  34. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +2 -2
  35. package/artifacts/contracts/explorations/GenArt721CoreV3_Explorations.sol/GenArt721CoreV3_Explorations.json +2 -2
  36. package/artifacts/contracts/interfaces/0.8.x/IFilteredMinterDAExpSettlementV1.sol/IFilteredMinterDAExpSettlementV1.json +767 -0
  37. package/artifacts/contracts/interfaces/0.8.x/IFilteredMinterSEAV0.sol/IFilteredMinterSEAV0.json +1032 -0
  38. package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractV3.sol/IGenArt721CoreContractV3.json +149 -0
  39. package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Base.sol/IGenArt721CoreContractV3_Base.json +149 -0
  40. package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Engine.sol/IGenArt721CoreContractV3_Engine.json +130 -0
  41. package/artifacts/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol/IGenArt721CoreContractV3_Engine_Flex.json +1066 -0
  42. package/artifacts/contracts/interfaces/0.8.x/IMinterFilterV0.sol/IMinterFilterV0.json +6 -0
  43. package/artifacts/contracts/interfaces/0.8.x/IRandomizerPolyptychV0.sol/IRandomizerPolyptychV0.json +87 -0
  44. package/artifacts/contracts/interfaces/0.8.x/IRandomizerV2.sol/IRandomizerV2.json +1 -1
  45. package/artifacts/contracts/interfaces/0.8.x/IWETH.sol/IWETH.json +55 -0
  46. package/artifacts/contracts/libs/integration-refs/weth9/weth9.sol/WETH9_.json +295 -0
  47. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV0.sol/MinterFilterV0.json +8 -2
  48. package/artifacts/contracts/minter-suite/MinterFilter/MinterFilterV1.sol/MinterFilterV1.json +34 -2
  49. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV2.sol/MinterDAExpSettlementV2.json +1127 -0
  50. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV4.sol/MinterDAExpV4.json +15 -2
  51. package/artifacts/contracts/minter-suite/Minters/MinterDALinV4.sol/MinterDALinV4.json +15 -2
  52. package/artifacts/contracts/minter-suite/Minters/MinterHolderV4.sol/MinterHolderV4.json +15 -2
  53. package/artifacts/contracts/minter-suite/Minters/MinterMerkleV5.sol/MinterMerkleV5.json +15 -2
  54. package/artifacts/contracts/minter-suite/Minters/MinterPolyptychV0.sol/IGenArt721CoreContractV3WithRandomizer.json +792 -0
  55. package/artifacts/contracts/minter-suite/Minters/MinterPolyptychV0.sol/MinterPolyptychV0.json +1268 -0
  56. package/artifacts/contracts/minter-suite/Minters/MinterSEAV0.sol/MinterSEAV0.json +1310 -0
  57. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +15 -2
  58. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV4.sol/MinterSetPriceV4.json +15 -2
  59. package/artifacts/contracts/mock/DeadReceiverBidderMock.sol/DeadReceiverBidderMock.json +33 -0
  60. package/artifacts/contracts/mock/GasLimitReceiverBidderMock.sol/GasLimitReceiverBidderMock.json +46 -0
  61. package/artifacts/contracts/mock/GasLimitReceiverMock.sol/GasLimitReceiverMock.json +28 -0
  62. package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +2 -2
  63. package/artifacts/contracts/mock/RandomizerV2_NoAssignMock.sol/RandomizerV2_NoAssignMock.json +3 -3
  64. package/artifacts/contracts/mock/ReentrancySEAMock.sol/ReentrancySEAAutoBidderMock.json +51 -0
  65. package/artifacts/contracts/{BasicRandomizer.sol → randomizer/BasicRandomizer.sol}/BasicRandomizer.json +3 -3
  66. package/artifacts/contracts/randomizer/BasicRandomizerBase_v0_0_0.sol/RandomizerBase.json +10 -0
  67. package/artifacts/contracts/randomizer/PolyptychRandomizerV0.sol/BasicPolyptychRandomizerV0.json +229 -0
  68. package/artifacts/contracts/randomizer/RandomizerV2.sol/BasicRandomizerV2.json +102 -0
  69. package/artifacts/contracts/royalty-registry/GenArt721RoyaltyOverride.sol/GenArt721RoyaltyOverride.json +2 -2
  70. package/contracts/DependencyRegistryV0.sol +74 -113
  71. package/contracts/GenArt721CoreV3.sol +124 -171
  72. package/contracts/GenArt721CoreV3_Engine.sol +136 -198
  73. package/contracts/GenArt721CoreV3_Engine_Flex.sol +2274 -0
  74. package/contracts/{minter-suite/Minters → archive/minter-suite/Minters/MinterDAExpSettlement}/MinterDAExpSettlementV1.sol +4 -4
  75. package/contracts/explorations/GenArt721CoreV3_Explorations.sol +147 -176
  76. package/contracts/interfaces/0.8.x/IFilteredMinterDAExpSettlementV1.sol +21 -0
  77. package/contracts/interfaces/0.8.x/IFilteredMinterSEAV0.sol +145 -0
  78. package/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Base.sol +39 -0
  79. package/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Engine.sol +0 -3
  80. package/contracts/interfaces/0.8.x/IGenArt721CoreContractV3_Engine_Flex.sol +132 -0
  81. package/contracts/interfaces/0.8.x/IMinterFilterV0.sol +6 -0
  82. package/contracts/interfaces/0.8.x/IRandomizerPolyptychV0.sol +31 -0
  83. package/contracts/interfaces/0.8.x/IRandomizerV2.sol +5 -2
  84. package/contracts/interfaces/0.8.x/IWETH.sol +11 -0
  85. package/contracts/libs/integration-refs/weth9/weth9.sol +763 -0
  86. package/contracts/minter-suite/MinterFilter/MinterFilterV1.sol +53 -47
  87. package/contracts/minter-suite/Minters/MinterDAExpSettlementV2.sol +1304 -0
  88. package/contracts/minter-suite/Minters/MinterDAExpV4.sol +47 -24
  89. package/contracts/minter-suite/Minters/MinterDALinV4.sol +46 -21
  90. package/contracts/minter-suite/Minters/MinterHolderV4.sol +54 -25
  91. package/contracts/minter-suite/Minters/MinterMerkleV5.sol +47 -20
  92. package/contracts/minter-suite/Minters/MinterPolyptychV0.sol +998 -0
  93. package/contracts/minter-suite/Minters/MinterSEAV0.sol +1224 -0
  94. package/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol +45 -16
  95. package/contracts/minter-suite/Minters/MinterSetPriceV4.sol +40 -13
  96. package/contracts/mock/DeadReceiverBidderMock.sol +23 -0
  97. package/contracts/mock/GasLimitReceiverBidderMock.sol +23 -0
  98. package/contracts/mock/GasLimitReceiverMock.sol +19 -0
  99. package/contracts/mock/RandomizerV2_NoAssignMock.sol +2 -11
  100. package/contracts/mock/ReentrancySEAMock.sol +36 -0
  101. package/contracts/{BasicRandomizer.sol → randomizer/BasicRandomizer.sol} +1 -1
  102. package/contracts/randomizer/BasicRandomizerBase_v0_0_0.sol +23 -0
  103. package/contracts/randomizer/PolyptychRandomizerV0.sol +117 -0
  104. package/contracts/{BasicRandomizerV2.sol → randomizer/RandomizerV2.sol} +7 -15
  105. package/package.json +32 -13
  106. package/artifacts/contracts/BasicRandomizerV2.sol/BasicRandomizerV2.json +0 -102
@@ -0,0 +1,229 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "BasicPolyptychRandomizerV0",
4
+ "sourceName": "contracts/randomizer/PolyptychRandomizerV0.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": true,
11
+ "internalType": "address",
12
+ "name": "_contractAddress",
13
+ "type": "address"
14
+ }
15
+ ],
16
+ "name": "HashSeedSetterUpdated",
17
+ "type": "event"
18
+ },
19
+ {
20
+ "anonymous": false,
21
+ "inputs": [
22
+ {
23
+ "indexed": true,
24
+ "internalType": "address",
25
+ "name": "previousOwner",
26
+ "type": "address"
27
+ },
28
+ {
29
+ "indexed": true,
30
+ "internalType": "address",
31
+ "name": "newOwner",
32
+ "type": "address"
33
+ }
34
+ ],
35
+ "name": "OwnershipTransferred",
36
+ "type": "event"
37
+ },
38
+ {
39
+ "anonymous": false,
40
+ "inputs": [
41
+ {
42
+ "indexed": false,
43
+ "internalType": "uint256",
44
+ "name": "_projectId",
45
+ "type": "uint256"
46
+ },
47
+ {
48
+ "indexed": false,
49
+ "internalType": "bool",
50
+ "name": "_isPolyptych",
51
+ "type": "bool"
52
+ }
53
+ ],
54
+ "name": "ProjectIsPolyptychUpdated",
55
+ "type": "event"
56
+ },
57
+ {
58
+ "inputs": [
59
+ {
60
+ "internalType": "address",
61
+ "name": "_genArt721Core",
62
+ "type": "address"
63
+ }
64
+ ],
65
+ "name": "assignCoreAndRenounce",
66
+ "outputs": [],
67
+ "stateMutability": "nonpayable",
68
+ "type": "function"
69
+ },
70
+ {
71
+ "inputs": [
72
+ {
73
+ "internalType": "uint256",
74
+ "name": "_tokenId",
75
+ "type": "uint256"
76
+ }
77
+ ],
78
+ "name": "assignTokenHash",
79
+ "outputs": [],
80
+ "stateMutability": "nonpayable",
81
+ "type": "function"
82
+ },
83
+ {
84
+ "inputs": [],
85
+ "name": "genArt721Core",
86
+ "outputs": [
87
+ {
88
+ "internalType": "contract IGenArt721CoreContractV3_Base",
89
+ "name": "",
90
+ "type": "address"
91
+ }
92
+ ],
93
+ "stateMutability": "view",
94
+ "type": "function"
95
+ },
96
+ {
97
+ "inputs": [],
98
+ "name": "hashSeedSetterContract",
99
+ "outputs": [
100
+ {
101
+ "internalType": "address",
102
+ "name": "",
103
+ "type": "address"
104
+ }
105
+ ],
106
+ "stateMutability": "view",
107
+ "type": "function"
108
+ },
109
+ {
110
+ "inputs": [],
111
+ "name": "owner",
112
+ "outputs": [
113
+ {
114
+ "internalType": "address",
115
+ "name": "",
116
+ "type": "address"
117
+ }
118
+ ],
119
+ "stateMutability": "view",
120
+ "type": "function"
121
+ },
122
+ {
123
+ "inputs": [
124
+ {
125
+ "internalType": "uint256",
126
+ "name": "",
127
+ "type": "uint256"
128
+ }
129
+ ],
130
+ "name": "polyptychHashSeeds",
131
+ "outputs": [
132
+ {
133
+ "internalType": "bytes12",
134
+ "name": "",
135
+ "type": "bytes12"
136
+ }
137
+ ],
138
+ "stateMutability": "view",
139
+ "type": "function"
140
+ },
141
+ {
142
+ "inputs": [
143
+ {
144
+ "internalType": "uint256",
145
+ "name": "",
146
+ "type": "uint256"
147
+ }
148
+ ],
149
+ "name": "projectIsPolyptych",
150
+ "outputs": [
151
+ {
152
+ "internalType": "bool",
153
+ "name": "",
154
+ "type": "bool"
155
+ }
156
+ ],
157
+ "stateMutability": "view",
158
+ "type": "function"
159
+ },
160
+ {
161
+ "inputs": [],
162
+ "name": "renounceOwnership",
163
+ "outputs": [],
164
+ "stateMutability": "nonpayable",
165
+ "type": "function"
166
+ },
167
+ {
168
+ "inputs": [
169
+ {
170
+ "internalType": "address",
171
+ "name": "_contractAddress",
172
+ "type": "address"
173
+ }
174
+ ],
175
+ "name": "setHashSeedSetterContract",
176
+ "outputs": [],
177
+ "stateMutability": "nonpayable",
178
+ "type": "function"
179
+ },
180
+ {
181
+ "inputs": [
182
+ {
183
+ "internalType": "uint256",
184
+ "name": "_tokenId",
185
+ "type": "uint256"
186
+ },
187
+ {
188
+ "internalType": "bytes12",
189
+ "name": "_hashSeed",
190
+ "type": "bytes12"
191
+ }
192
+ ],
193
+ "name": "setPolyptychHashSeed",
194
+ "outputs": [],
195
+ "stateMutability": "nonpayable",
196
+ "type": "function"
197
+ },
198
+ {
199
+ "inputs": [
200
+ {
201
+ "internalType": "uint256",
202
+ "name": "_projectId",
203
+ "type": "uint256"
204
+ }
205
+ ],
206
+ "name": "toggleProjectIsPolyptych",
207
+ "outputs": [],
208
+ "stateMutability": "nonpayable",
209
+ "type": "function"
210
+ },
211
+ {
212
+ "inputs": [
213
+ {
214
+ "internalType": "address",
215
+ "name": "newOwner",
216
+ "type": "address"
217
+ }
218
+ ],
219
+ "name": "transferOwnership",
220
+ "outputs": [],
221
+ "stateMutability": "nonpayable",
222
+ "type": "function"
223
+ }
224
+ ],
225
+ "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6109798061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea26469706673582212205373dd70ac957a4e0fbd815aeac73ae40ea664c21e43da70c2852f05d90624c864736f6c63430008110033",
226
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c806308aacdf1146100a95780633897bb42146100e1578063447aa1c51461011d57806359e4a2ad1461013257806366b92a0e14610145578063715018a6146101705780638da5cb5b14610178578063b628171a14610180578063e19133e214610193578063eaa76157146101a6578063eb037309146101b9578063f2fde38b146101cc575b600080fd5b6100cc6100b73660046107f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6101046100ef3660046107f5565b60026020526000908152604090205460a01b81565b6040516001600160a01b031990911681526020016100d8565b61013061012b366004610823565b6101df565b005b610130610140366004610847565b610239565b600454610158906001600160a01b031681565b6040516001600160a01b0390911681526020016100d8565b6101306102bf565b6101586102d3565b61013061018e3660046107f5565b6102e2565b600154610158906001600160a01b031681565b6101306101b4366004610823565b61043a565b6101306101c73660046107f5565b61046c565b6101306101da366004610823565b6104d8565b6101ef63447aa1c560e01b610551565b600480546001600160a01b0319166001600160a01b0383169081179091556040517f8efe01ac3eede6840252c9e2462d05448dc65a012877da2bcf1e32c06a161a3d90600090a250565b6004546001600160a01b031633146102965760405162461bcd60e51b815260206004820152601b60248201527a13db9b1e481a185cda14d9595914d95d1d195c90dbdb9d1c9858dd602a1b60448201526064015b60405180910390fd5b60009182526002602052604090912080546001600160601b03191660a09290921c919091179055565b6102c761061e565b6102d1600061067d565b565b6000546001600160a01b031690565b6001546001600160a01b031633146103315760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b604482015260640161028d565b6000600381610343620f4240856108b0565b815260208101919091526040016000205460ff161561037e575060008181526002602052604090205460a01b6001600160a01b03191661038a565b610387826106cd565b90505b60008190036103d55760405162461bcd60e51b815260206004820152601760248201527613db9b1e481b9bdb8b5e995c9bc81a185cda081cd95959604a1b604482015260640161028d565b60015460405161078f60e21b815260048101849052602481018390526001600160a01b0390911690611e3c90604401600060405180830381600087803b15801561041e57600080fd5b505af1158015610432573d6000803e3d6000fd5b505050505050565b61044261061e565b61044a6102bf565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6104758161073a565b600081815260036020908152604091829020805460ff8082161560ff199092168217909255835185815291161515918101919091527fede330a7b41e8a7cd3e273fa4093f4fb1ab8d9b0dd270a9931dc4e5035cf1d28910160405180910390a150565b6104e061061e565b6001600160a01b0381166105455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161028d565b61054e8161067d565b50565b60015460405163230448b160e01b81523360048201523060248201526001600160e01b0319831660448201526001600160a01b039091169063230448b1906064016020604051808303816000875af11580156105b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d591906108c4565b61054e5760405162461bcd60e51b815260206004820152601a60248201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604482015260640161028d565b336106276102d3565b6001600160a01b0316146102d15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436106dd6001826108e6565b40836106ea60c8826108ff565b6106f5906001610913565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b60015460405163a47d29cb60e01b8152600481018390526001600160a01b039091169063a47d29cb90602401602060405180830381865afa158015610783573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a79190610926565b6001600160a01b0316336001600160a01b03161461054e5760405162461bcd60e51b815260206004820152600b60248201526a13db9b1e48105c9d1a5cdd60aa1b604482015260640161028d565b60006020828403121561080757600080fd5b5035919050565b6001600160a01b038116811461054e57600080fd5b60006020828403121561083557600080fd5b81356108408161080e565b9392505050565b6000806040838503121561085a57600080fd5b8235915060208301356001600160a01b03198116811461087957600080fd5b809150509250929050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000826108bf576108bf610884565b500490565b6000602082840312156108d657600080fd5b8151801515811461084057600080fd5b818103818111156108f9576108f961089a565b92915050565b60008261090e5761090e610884565b500690565b808201808211156108f9576108f961089a565b60006020828403121561093857600080fd5b81516108408161080e56fea26469706673582212205373dd70ac957a4e0fbd815aeac73ae40ea664c21e43da70c2852f05d90624c864736f6c63430008110033",
227
+ "linkReferences": {},
228
+ "deployedLinkReferences": {}
229
+ }
@@ -0,0 +1,102 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "BasicRandomizerV2",
4
+ "sourceName": "contracts/randomizer/RandomizerV2.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": true,
11
+ "internalType": "address",
12
+ "name": "previousOwner",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "indexed": true,
17
+ "internalType": "address",
18
+ "name": "newOwner",
19
+ "type": "address"
20
+ }
21
+ ],
22
+ "name": "OwnershipTransferred",
23
+ "type": "event"
24
+ },
25
+ {
26
+ "inputs": [
27
+ {
28
+ "internalType": "address",
29
+ "name": "_genArt721Core",
30
+ "type": "address"
31
+ }
32
+ ],
33
+ "name": "assignCoreAndRenounce",
34
+ "outputs": [],
35
+ "stateMutability": "nonpayable",
36
+ "type": "function"
37
+ },
38
+ {
39
+ "inputs": [
40
+ {
41
+ "internalType": "uint256",
42
+ "name": "_tokenId",
43
+ "type": "uint256"
44
+ }
45
+ ],
46
+ "name": "assignTokenHash",
47
+ "outputs": [],
48
+ "stateMutability": "nonpayable",
49
+ "type": "function"
50
+ },
51
+ {
52
+ "inputs": [],
53
+ "name": "genArt721Core",
54
+ "outputs": [
55
+ {
56
+ "internalType": "contract IGenArt721CoreContractV3_Base",
57
+ "name": "",
58
+ "type": "address"
59
+ }
60
+ ],
61
+ "stateMutability": "view",
62
+ "type": "function"
63
+ },
64
+ {
65
+ "inputs": [],
66
+ "name": "owner",
67
+ "outputs": [
68
+ {
69
+ "internalType": "address",
70
+ "name": "",
71
+ "type": "address"
72
+ }
73
+ ],
74
+ "stateMutability": "view",
75
+ "type": "function"
76
+ },
77
+ {
78
+ "inputs": [],
79
+ "name": "renounceOwnership",
80
+ "outputs": [],
81
+ "stateMutability": "nonpayable",
82
+ "type": "function"
83
+ },
84
+ {
85
+ "inputs": [
86
+ {
87
+ "internalType": "address",
88
+ "name": "newOwner",
89
+ "type": "address"
90
+ }
91
+ ],
92
+ "name": "transferOwnership",
93
+ "outputs": [],
94
+ "stateMutability": "nonpayable",
95
+ "type": "function"
96
+ }
97
+ ],
98
+ "bytecode": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6104738061007e6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea264697066735822122014524dabc9a46833d70fa6f181dd68971ddd5defa395c471ac26d850fc2b840764736f6c63430008110033",
99
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063715018a6146100675780638da5cb5b14610071578063b628171a14610095578063e19133e2146100a8578063eaa76157146100bb578063f2fde38b146100ce575b600080fd5b61006f6100e1565b005b6100796100f5565b6040516001600160a01b03909116815260200160405180910390f35b61006f6100a3366004610390565b610104565b600154610079906001600160a01b031681565b61006f6100c93660046103a9565b6101c9565b61006f6100dc3660046103a9565b6101fb565b6100e9610274565b6100f360006102d3565b565b6000546001600160a01b031690565b6001546001600160a01b031633146101585760405162461bcd60e51b815260206004820152601260248201527113db9b1e4818dbdc99481b585e4818d85b1b60721b60448201526064015b60405180910390fd5b600061016382610323565b60015460405161078f60e21b815260048101859052602481018390529192506001600160a01b031690611e3c90604401600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b6101d1610274565b6101d96100e1565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b610203610274565b6001600160a01b0381166102685760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161014f565b610271816102d3565b50565b3361027d6100f5565b6001600160a01b0316146100f35760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161014f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60004282436103336001826103ef565b408361034060c882610408565b61034b90600161042a565b6040805160208101969096528501939093526060840191909152608083015260a082015260c00160405160208183030381529060405280519060200120915050919050565b6000602082840312156103a257600080fd5b5035919050565b6000602082840312156103bb57600080fd5b81356001600160a01b03811681146103d257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610402576104026103d9565b92915050565b60008261042557634e487b7160e01b600052601260045260246000fd5b500690565b80820180821115610402576104026103d956fea264697066735822122014524dabc9a46833d70fa6f181dd68971ddd5defa395c471ac26d850fc2b840764736f6c63430008110033",
100
+ "linkReferences": {},
101
+ "deployedLinkReferences": {}
102
+ }
@@ -201,8 +201,8 @@
201
201
  "type": "function"
202
202
  }
203
203
  ],
204
- "bytecode": "0x608060405234801561001057600080fd5b50610ae1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c806301736bdd1461007d57806301ffc9a7146100c3578063226d4d4a146100e657806348125993146100fc578063865e2bb5146101115780638e9bf99c146101555780639ca7dc7a14610168578063dd4938cd14610189575b600080fd5b6100a661008b366004610861565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d66100d1366004610885565b61019c565b60405190151581526020016100ba565b6100ee60fa81565b6040519081526020016100ba565b61010f61010a3660046108af565b6101d3565b005b61013e61011f366004610861565b6001602081905260009182526040909120805491015460ff9091169082565b6040805192151583526020830191909152016100ba565b61010f610163366004610861565b61036e565b61017b6101763660046108af565b610489565b6040516100ba9291906108db565b61010f61019736600461095f565b61074f565b60006001600160e01b03198216634e53ee3d60e11b14806101cd57506301ffc9a760e01b6001600160e01b03198316145b92915050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561021757600080fd5b505afa15801561022b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024f9190610998565b6001600160a01b03161461027e5760405162461bcd60e51b8152600401610275906109b5565b60405180910390fd5b60fa8211156102f55760405162461bcd60e51b815260206004820152603f60248201527f6f766572726964652062707320666f7220636f6e7472616374206d757374206260448201527f65206c657373207468616e206f7220657175616c20746f2064656661756c74006064820152608401610275565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b257600080fd5b505afa1580156103c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ea9190610998565b6001600160a01b0316146104105760405162461bcd60e51b8152600401610275906109b5565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a35050565b60408051600380825260808201909252606091829190602082018380368337505060408051600380825260808201909252929450905060208201606080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161050391815260200190565b60806040518083038186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105539190610a01565b9350935093509350838660008151811061056f5761056f610a49565b6001600160a01b039092166020928302919091019091015280610593836064610a75565b61059d9190610a8c565b856000815181106105b0576105b0610a49565b60200260200101818152505082866001815181106105d0576105d0610a49565b6001600160a01b03909216602092830291909101909101526105f28183610a8c565b8560018151811061060557610605610a49565b6020908102919091018101919091526001600160a01b038981166000908152918290526040909120541661069b5760405162461bcd60e51b815260206004820152603760248201527f41727420426c6f636b7320726f79616c74792061646472657373206d757374206044820152761899481919599a5b995908199bdc8818dbdb9d1c9858dd604a1b6064820152608401610275565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106cd576106cd610a49565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff166107075760fa610725565b6001600160a01b038816600090815260016020819052604090912001545b8560028151811061073857610738610a49565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561079357600080fd5b505afa1580156107a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cb9190610998565b6001600160a01b0316146107f15760405162461bcd60e51b8152600401610275906109b5565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f7cb321285c1ec4f1d1b443dc12381a37bf49e9edabe5ab5c35d1ebfb16dca3f69190a3505050565b6001600160a01b038116811461085e57600080fd5b50565b60006020828403121561087357600080fd5b813561087e81610849565b9392505050565b60006020828403121561089757600080fd5b81356001600160e01b03198116811461087e57600080fd5b600080604083850312156108c257600080fd5b82356108cd81610849565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b8281101561091d5781516001600160a01b0316845292840192908401906001016108f8565b5050508381038285015284518082528583019183019060005b8181101561095257835183529284019291840191600101610936565b5090979650505050505050565b6000806040838503121561097257600080fd5b823561097d81610849565b9150602083013561098d81610849565b809150509250929050565b6000602082840312156109aa57600080fd5b815161087e81610849565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b60008060008060808587031215610a1757600080fd5b8451610a2281610849565b6020860151909450610a3381610849565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610a8757610a87610a5f565b500390565b6000816000190483118215151615610aa657610aa6610a5f565b50029056fea2646970667358221220f216e807512e3bea2f139ee2b277de453beb741698efdc757a20072185556c8364736f6c63430008090033",
205
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100785760003560e01c806301736bdd1461007d57806301ffc9a7146100c3578063226d4d4a146100e657806348125993146100fc578063865e2bb5146101115780638e9bf99c146101555780639ca7dc7a14610168578063dd4938cd14610189575b600080fd5b6100a661008b366004610861565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d66100d1366004610885565b61019c565b60405190151581526020016100ba565b6100ee60fa81565b6040519081526020016100ba565b61010f61010a3660046108af565b6101d3565b005b61013e61011f366004610861565b6001602081905260009182526040909120805491015460ff9091169082565b6040805192151583526020830191909152016100ba565b61010f610163366004610861565b61036e565b61017b6101763660046108af565b610489565b6040516100ba9291906108db565b61010f61019736600461095f565b61074f565b60006001600160e01b03198216634e53ee3d60e11b14806101cd57506301ffc9a760e01b6001600160e01b03198316145b92915050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561021757600080fd5b505afa15801561022b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024f9190610998565b6001600160a01b03161461027e5760405162461bcd60e51b8152600401610275906109b5565b60405180910390fd5b60fa8211156102f55760405162461bcd60e51b815260206004820152603f60248201527f6f766572726964652062707320666f7220636f6e7472616374206d757374206260448201527f65206c657373207468616e206f7220657175616c20746f2064656661756c74006064820152608401610275565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b257600080fd5b505afa1580156103c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ea9190610998565b6001600160a01b0316146104105760405162461bcd60e51b8152600401610275906109b5565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a35050565b60408051600380825260808201909252606091829190602082018380368337505060408051600380825260808201909252929450905060208201606080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161050391815260200190565b60806040518083038186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105539190610a01565b9350935093509350838660008151811061056f5761056f610a49565b6001600160a01b039092166020928302919091019091015280610593836064610a75565b61059d9190610a8c565b856000815181106105b0576105b0610a49565b60200260200101818152505082866001815181106105d0576105d0610a49565b6001600160a01b03909216602092830291909101909101526105f28183610a8c565b8560018151811061060557610605610a49565b6020908102919091018101919091526001600160a01b038981166000908152918290526040909120541661069b5760405162461bcd60e51b815260206004820152603760248201527f41727420426c6f636b7320726f79616c74792061646472657373206d757374206044820152761899481919599a5b995908199bdc8818dbdb9d1c9858dd604a1b6064820152608401610275565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106cd576106cd610a49565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff166107075760fa610725565b6001600160a01b038816600090815260016020819052604090912001545b8560028151811061073857610738610a49565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561079357600080fd5b505afa1580156107a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cb9190610998565b6001600160a01b0316146107f15760405162461bcd60e51b8152600401610275906109b5565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f7cb321285c1ec4f1d1b443dc12381a37bf49e9edabe5ab5c35d1ebfb16dca3f69190a3505050565b6001600160a01b038116811461085e57600080fd5b50565b60006020828403121561087357600080fd5b813561087e81610849565b9392505050565b60006020828403121561089757600080fd5b81356001600160e01b03198116811461087e57600080fd5b600080604083850312156108c257600080fd5b82356108cd81610849565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b8281101561091d5781516001600160a01b0316845292840192908401906001016108f8565b5050508381038285015284518082528583019183019060005b8181101561095257835183529284019291840191600101610936565b5090979650505050505050565b6000806040838503121561097257600080fd5b823561097d81610849565b9150602083013561098d81610849565b809150509250929050565b6000602082840312156109aa57600080fd5b815161087e81610849565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b60008060008060808587031215610a1757600080fd5b8451610a2281610849565b6020860151909450610a3381610849565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610a8757610a87610a5f565b500390565b6000816000190483118215151615610aa657610aa6610a5f565b50029056fea2646970667358221220f216e807512e3bea2f139ee2b277de453beb741698efdc757a20072185556c8364736f6c63430008090033",
204
+ "bytecode": "0x608060405234801561001057600080fd5b50610ae1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100785760003560e01c806301736bdd1461007d57806301ffc9a7146100c3578063226d4d4a146100e657806348125993146100fc578063865e2bb5146101115780638e9bf99c146101555780639ca7dc7a14610168578063dd4938cd14610189575b600080fd5b6100a661008b366004610861565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d66100d1366004610885565b61019c565b60405190151581526020016100ba565b6100ee60fa81565b6040519081526020016100ba565b61010f61010a3660046108af565b6101d3565b005b61013e61011f366004610861565b6001602081905260009182526040909120805491015460ff9091169082565b6040805192151583526020830191909152016100ba565b61010f610163366004610861565b61036e565b61017b6101763660046108af565b610489565b6040516100ba9291906108db565b61010f61019736600461095f565b61074f565b60006001600160e01b03198216634e53ee3d60e11b14806101cd57506301ffc9a760e01b6001600160e01b03198316145b92915050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561021757600080fd5b505afa15801561022b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024f9190610998565b6001600160a01b03161461027e5760405162461bcd60e51b8152600401610275906109b5565b60405180910390fd5b60fa8211156102f55760405162461bcd60e51b815260206004820152603f60248201527f6f766572726964652062707320666f7220636f6e7472616374206d757374206260448201527f65206c657373207468616e206f7220657175616c20746f2064656661756c74006064820152608401610275565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b257600080fd5b505afa1580156103c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ea9190610998565b6001600160a01b0316146104105760405162461bcd60e51b8152600401610275906109b5565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a35050565b60408051600380825260808201909252606091829190602082018380368337505060408051600380825260808201909252929450905060208201606080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161050391815260200190565b60806040518083038186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105539190610a01565b9350935093509350838660008151811061056f5761056f610a49565b6001600160a01b039092166020928302919091019091015280610593836064610a75565b61059d9190610a8c565b856000815181106105b0576105b0610a49565b60200260200101818152505082866001815181106105d0576105d0610a49565b6001600160a01b03909216602092830291909101909101526105f28183610a8c565b8560018151811061060557610605610a49565b6020908102919091018101919091526001600160a01b038981166000908152918290526040909120541661069b5760405162461bcd60e51b815260206004820152603760248201527f41727420426c6f636b7320726f79616c74792061646472657373206d757374206044820152761899481919599a5b995908199bdc8818dbdb9d1c9858dd604a1b6064820152608401610275565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106cd576106cd610a49565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff166107075760fa610725565b6001600160a01b038816600090815260016020819052604090912001545b8560028151811061073857610738610a49565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561079357600080fd5b505afa1580156107a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cb9190610998565b6001600160a01b0316146107f15760405162461bcd60e51b8152600401610275906109b5565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f7cb321285c1ec4f1d1b443dc12381a37bf49e9edabe5ab5c35d1ebfb16dca3f69190a3505050565b6001600160a01b038116811461085e57600080fd5b50565b60006020828403121561087357600080fd5b813561087e81610849565b9392505050565b60006020828403121561089757600080fd5b81356001600160e01b03198116811461087e57600080fd5b600080604083850312156108c257600080fd5b82356108cd81610849565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b8281101561091d5781516001600160a01b0316845292840192908401906001016108f8565b5050508381038285015284518082528583019183019060005b8181101561095257835183529284019291840191600101610936565b5090979650505050505050565b6000806040838503121561097257600080fd5b823561097d81610849565b9150602083013561098d81610849565b809150509250929050565b6000602082840312156109aa57600080fd5b815161087e81610849565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b60008060008060808587031215610a1757600080fd5b8451610a2281610849565b6020860151909450610a3381610849565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610a8757610a87610a5f565b500390565b6000816000190483118215151615610aa657610aa6610a5f565b50029056fea264697066735822122006c86672c9c102a0337e692e06688cedf40c00e24bc67038c537feaf7aff5f5e64736f6c63430008090033",
205
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100785760003560e01c806301736bdd1461007d57806301ffc9a7146100c3578063226d4d4a146100e657806348125993146100fc578063865e2bb5146101115780638e9bf99c146101555780639ca7dc7a14610168578063dd4938cd14610189575b600080fd5b6100a661008b366004610861565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6100d66100d1366004610885565b61019c565b60405190151581526020016100ba565b6100ee60fa81565b6040519081526020016100ba565b61010f61010a3660046108af565b6101d3565b005b61013e61011f366004610861565b6001602081905260009182526040909120805491015460ff9091169082565b6040805192151583526020830191909152016100ba565b61010f610163366004610861565b61036e565b61017b6101763660046108af565b610489565b6040516100ba9291906108db565b61010f61019736600461095f565b61074f565b60006001600160e01b03198216634e53ee3d60e11b14806101cd57506301ffc9a760e01b6001600160e01b03198316145b92915050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561021757600080fd5b505afa15801561022b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024f9190610998565b6001600160a01b03161461027e5760405162461bcd60e51b8152600401610275906109b5565b60405180910390fd5b60fa8211156102f55760405162461bcd60e51b815260206004820152603f60248201527f6f766572726964652062707320666f7220636f6e7472616374206d757374206260448201527f65206c657373207468616e206f7220657175616c20746f2064656661756c74006064820152608401610275565b604080518082018252600180825260208083018681526001600160a01b03881660008181528484528690209451855460ff1916901515178555905193830193909355925185815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a3505050565b80336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b1580156103b257600080fd5b505afa1580156103c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ea9190610998565b6001600160a01b0316146104105760405162461bcd60e51b8152600401610275906109b5565b604080518082018252600080825260208083018281526001600160a01b03871680845260018084528685209551865460ff191690151517865591519490910193909355925181815290927f3340f1611a111786fce0865d0c4a37d167e99d2fe04dcf45e5d589310033ab2f910160405180910390a35050565b60408051600380825260808201909252606091829190602082018380368337505060408051600380825260808201909252929450905060208201606080368337019050509050600080600080876001600160a01b031663a65ff74c886040518263ffffffff1660e01b815260040161050391815260200190565b60806040518083038186803b15801561051b57600080fd5b505afa15801561052f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105539190610a01565b9350935093509350838660008151811061056f5761056f610a49565b6001600160a01b039092166020928302919091019091015280610593836064610a75565b61059d9190610a8c565b856000815181106105b0576105b0610a49565b60200260200101818152505082866001815181106105d0576105d0610a49565b6001600160a01b03909216602092830291909101909101526105f28183610a8c565b8560018151811061060557610605610a49565b6020908102919091018101919091526001600160a01b038981166000908152918290526040909120541661069b5760405162461bcd60e51b815260206004820152603760248201527f41727420426c6f636b7320726f79616c74792061646472657373206d757374206044820152761899481919599a5b995908199bdc8818dbdb9d1c9858dd604a1b6064820152608401610275565b6001600160a01b038089166000908152602081905260409020548751911690879060029081106106cd576106cd610a49565b6001600160a01b0392831660209182029290920181019190915290891660009081526001909152604090205460ff166107075760fa610725565b6001600160a01b038816600090815260016020819052604090912001545b8560028151811061073857610738610a49565b602002602001018181525050505050509250929050565b81336001600160a01b0316816001600160a01b031663f851a4406040518163ffffffff1660e01b815260040160206040518083038186803b15801561079357600080fd5b505afa1580156107a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cb9190610998565b6001600160a01b0316146107f15760405162461bcd60e51b8152600401610275906109b5565b6001600160a01b0383811660008181526020819052604080822080546001600160a01b0319169487169485179055517f7cb321285c1ec4f1d1b443dc12381a37bf49e9edabe5ab5c35d1ebfb16dca3f69190a3505050565b6001600160a01b038116811461085e57600080fd5b50565b60006020828403121561087357600080fd5b813561087e81610849565b9392505050565b60006020828403121561089757600080fd5b81356001600160e01b03198116811461087e57600080fd5b600080604083850312156108c257600080fd5b82356108cd81610849565b946020939093013593505050565b604080825283519082018190526000906020906060840190828701845b8281101561091d5781516001600160a01b0316845292840192908401906001016108f8565b5050508381038285015284518082528583019183019060005b8181101561095257835183529284019291840191600101610936565b5090979650505050505050565b6000806040838503121561097257600080fd5b823561097d81610849565b9150602083013561098d81610849565b809150509250929050565b6000602082840312156109aa57600080fd5b815161087e81610849565b6020808252602c908201527f4f6e6c7920636f72652061646d696e20666f722073706563696669656420746f60408201526b1ad95b8818dbdb9d1c9858dd60a21b606082015260800190565b60008060008060808587031215610a1757600080fd5b8451610a2281610849565b6020860151909450610a3381610849565b6040860151606090960151949790965092505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600082821015610a8757610a87610a5f565b500390565b6000816000190483118215151615610aa657610aa6610a5f565b50029056fea264697066735822122006c86672c9c102a0337e692e06688cedf40c00e24bc67038c537feaf7aff5f5e64736f6c63430008090033",
206
206
  "linkReferences": {},
207
207
  "deployedLinkReferences": {}
208
208
  }