@artblocks/contracts 0.0.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. package/README.md +27 -2
  2. package/artifacts/contracts/archive/GenArt721CoreV0.sol/Address.json +10 -0
  3. package/artifacts/contracts/archive/GenArt721CoreV0.sol/Counters.json +10 -0
  4. package/artifacts/contracts/archive/GenArt721CoreV0.sol/CustomERC721Metadata.json +425 -0
  5. package/artifacts/contracts/archive/GenArt721CoreV0.sol/ERC165.json +38 -0
  6. package/artifacts/contracts/archive/GenArt721CoreV0.sol/ERC721.json +322 -0
  7. package/artifacts/contracts/archive/GenArt721CoreV0.sol/ERC721Enumerable.json +384 -0
  8. package/artifacts/contracts/archive/GenArt721CoreV0.sol/ERC721ReceiverMock.json +101 -0
  9. package/artifacts/contracts/archive/GenArt721CoreV0.sol/GenArt721.json +1528 -0
  10. package/artifacts/contracts/archive/GenArt721CoreV0.sol/IERC165.json +32 -0
  11. package/artifacts/contracts/archive/GenArt721CoreV0.sol/IERC721.json +316 -0
  12. package/artifacts/contracts/archive/GenArt721CoreV0.sol/IERC721Enumerable.json +378 -0
  13. package/artifacts/contracts/archive/GenArt721CoreV0.sol/IERC721Receiver.json +47 -0
  14. package/artifacts/contracts/archive/GenArt721CoreV0.sol/SafeMath.json +10 -0
  15. package/artifacts/contracts/archive/GenArt721CoreV0.sol/Strings.json +10 -0
  16. package/artifacts/contracts/archive/GenArt721CoreV1.sol/Address.json +10 -0
  17. package/artifacts/contracts/archive/GenArt721CoreV1.sol/Counters.json +10 -0
  18. package/artifacts/contracts/archive/GenArt721CoreV1.sol/CustomERC721Metadata.json +425 -0
  19. package/artifacts/contracts/archive/GenArt721CoreV1.sol/ERC165.json +38 -0
  20. package/artifacts/contracts/archive/GenArt721CoreV1.sol/ERC721.json +322 -0
  21. package/artifacts/contracts/archive/GenArt721CoreV1.sol/ERC721Enumerable.json +384 -0
  22. package/artifacts/contracts/archive/GenArt721CoreV1.sol/GenArt721Core.json +1773 -0
  23. package/artifacts/contracts/archive/GenArt721CoreV1.sol/IERC165.json +32 -0
  24. package/artifacts/contracts/archive/GenArt721CoreV1.sol/IERC721.json +316 -0
  25. package/artifacts/contracts/archive/GenArt721CoreV1.sol/IERC721Enumerable.json +378 -0
  26. package/artifacts/contracts/archive/GenArt721CoreV1.sol/IERC721Receiver.json +47 -0
  27. package/artifacts/contracts/archive/GenArt721CoreV1.sol/Randomizer.json +26 -0
  28. package/artifacts/contracts/archive/GenArt721CoreV1.sol/SafeMath.json +10 -0
  29. package/artifacts/contracts/archive/GenArt721CoreV1.sol/Strings.json +10 -0
  30. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV0.sol/MinterDAExpV0.json +575 -0
  31. package/artifacts/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV1.sol/MinterDAExpV1.json +463 -0
  32. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDAExp/MinterDAExpV2.sol/MinterDAExpV2.json +3 -3
  33. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDAExp/MinterDAExpV3.sol/MinterDAExpV3.json +3 -3
  34. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol/MinterDAExpSettlementV0.json +15 -15
  35. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV0.sol/MinterDALinV0.json +551 -0
  36. package/artifacts/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV1.sol/MinterDALinV1.json +439 -0
  37. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDALin/MinterDALinV2.sol/MinterDALinV2.json +3 -3
  38. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDALin/MinterDALinV3.sol/MinterDALinV3.json +3 -3
  39. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV0.sol/MinterHolderV0.json +622 -0
  40. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol/MinterHolderV1.json +719 -0
  41. package/artifacts/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +794 -0
  42. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterHolder/MinterHolderV3.sol/MinterHolderV3.json +3 -3
  43. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV0.sol/MinterMerkleV0.json +873 -0
  44. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol/MinterMerkleV1.json +932 -0
  45. package/artifacts/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol/MinterMerkleV2.json +984 -0
  46. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterMerkle/MinterMerkleV3.sol/MinterMerkleV3.json +3 -3
  47. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterMerkle/MinterMerkleV4.sol/MinterMerkleV4.json +3 -3
  48. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV0.sol/MinterSetPriceV0.json +400 -0
  49. package/artifacts/contracts/{minter-suite/Minters/MinterSetPrice/deprecated → archive/minter-suite/Minters/MinterSetPrice}/MinterSetPriceV1.sol/MinterSetPriceV1.json +3 -3
  50. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterSetPrice/MinterSetPriceV2.sol/MinterSetPriceV2.json +3 -3
  51. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterSetPrice/MinterSetPriceV3.sol/MinterSetPriceV3.json +3 -3
  52. package/artifacts/contracts/{minter-suite/Minters/MinterSetPriceERC20/deprecated → archive/minter-suite/Minters/MinterSetPriceERC20}/MinterSetPriceERC20V0.sol/MinterSetPriceERC20V0.json +3 -3
  53. package/artifacts/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V1.sol/MinterSetPriceERC20V1.json +349 -0
  54. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol/MinterSetPriceERC20V2.json +3 -3
  55. package/artifacts/contracts/{minter-suite → archive/minter-suite}/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol/MinterSetPriceERC20V3.json +3 -3
  56. package/artifacts/contracts/interfaces/0.8.x/IFilteredMinterDAExpSettlementV0.sol/IFilteredMinterDAExpSettlementV0.json +12 -12
  57. package/artifacts/contracts/interfaces/0.8.x/IFilteredMinterDAExpSettlement_Mixin.sol/IFilteredMinterDAExpSettlement_Mixin.json +161 -0
  58. package/artifacts/contracts/interfaces/0.8.x/IMinterBaseV0.sol/IMinterBaseV0.json +24 -0
  59. package/artifacts/contracts/interfaces/0.8.x/IMintingAPICoreV0.sol/IMintingAPICoreV0.json +185 -0
  60. package/artifacts/contracts/interfaces/0.8.x/IMintingAPIMinterV0.sol/IMintingAPIMinterV0.json +88 -0
  61. package/artifacts/contracts/minter-suite/Minters/MinterBase_v0_1_1.sol/MinterBase.json +24 -0
  62. package/artifacts/contracts/minter-suite/Minters/MinterDAExpSettlementV1.sol/MinterDAExpSettlementV1.json +1066 -0
  63. package/artifacts/contracts/minter-suite/Minters/MinterDAExpV4.sol/MinterDAExpV4.json +869 -0
  64. package/artifacts/contracts/minter-suite/Minters/MinterDALinV4.sol/MinterDALinV4.json +845 -0
  65. package/artifacts/contracts/minter-suite/Minters/MinterHolderV4.sol/MinterHolderV4.json +1113 -0
  66. package/artifacts/contracts/minter-suite/Minters/MinterMerkleV5.sol/MinterMerkleV5.json +1052 -0
  67. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol/MinterSetPriceERC20V4.json +755 -0
  68. package/artifacts/contracts/minter-suite/Minters/MinterSetPriceV4.sol/MinterSetPriceV4.json +684 -0
  69. package/artifacts/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol/GenArt721CoreV3_Engine_IncorrectCoreType.json +1817 -0
  70. package/contracts/archive/GenArt721CoreV0.sol +1621 -0
  71. package/contracts/archive/GenArt721CoreV1.sol +1577 -0
  72. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV0.sol +503 -0
  73. package/contracts/archive/minter-suite/Minters/MinterDAExp/MinterDAExpV1.sol +442 -0
  74. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDAExp/MinterDAExpV2.sol +3 -3
  75. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDAExp/MinterDAExpV3.sol +3 -3
  76. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDAExpSettlement/MinterDAExpSettlementV0.sol +3 -3
  77. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV0.sol +450 -0
  78. package/contracts/archive/minter-suite/Minters/MinterDALin/MinterDALinV1.sol +406 -0
  79. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDALin/MinterDALinV2.sol +3 -3
  80. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterDALin/MinterDALinV3.sol +3 -3
  81. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV0.sol +540 -0
  82. package/contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol +648 -0
  83. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterHolder/MinterHolderV2.sol +6 -6
  84. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterHolder/MinterHolderV3.sol +4 -4
  85. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV0.sol +523 -0
  86. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV1.sol +602 -0
  87. package/contracts/archive/minter-suite/Minters/MinterMerkle/MinterMerkleV2.sol +679 -0
  88. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterMerkle/MinterMerkleV3.sol +4 -4
  89. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterMerkle/MinterMerkleV4.sol +4 -4
  90. package/contracts/archive/minter-suite/Minters/MinterSetPrice/MinterSetPriceV0.sol +333 -0
  91. package/contracts/{minter-suite/Minters/MinterSetPrice/deprecated → archive/minter-suite/Minters/MinterSetPrice}/MinterSetPriceV1.sol +0 -0
  92. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterSetPrice/MinterSetPriceV2.sol +3 -3
  93. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterSetPrice/MinterSetPriceV3.sol +3 -3
  94. package/contracts/{minter-suite/Minters/MinterSetPriceERC20/deprecated → archive/minter-suite/Minters/MinterSetPriceERC20}/MinterSetPriceERC20V0.sol +0 -0
  95. package/contracts/archive/minter-suite/Minters/MinterSetPriceERC20/MinterSetPriceERC20V1.sol +411 -0
  96. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterSetPriceERC20/MinterSetPriceERC20V2.sol +3 -3
  97. package/contracts/{minter-suite → archive/minter-suite}/Minters/MinterSetPriceERC20/MinterSetPriceERC20V3.sol +3 -3
  98. package/contracts/interfaces/0.8.x/IFilteredMinterDAExpSettlementV0.sol +4 -53
  99. package/contracts/interfaces/0.8.x/IFilteredMinterDAExpSettlement_Mixin.sol +62 -0
  100. package/contracts/interfaces/0.8.x/IMinterBaseV0.sol +20 -0
  101. package/contracts/interfaces/0.8.x/IMintingAPICoreV0.sol +62 -0
  102. package/contracts/interfaces/0.8.x/IMintingAPIMinterV0.sol +31 -0
  103. package/contracts/minter-suite/Minters/MinterBase_v0_1_1.sol +293 -0
  104. package/contracts/minter-suite/Minters/MinterDAExpSettlementV1.sol +1026 -0
  105. package/contracts/minter-suite/Minters/MinterDAExpV4.sol +572 -0
  106. package/contracts/minter-suite/Minters/MinterDALinV4.sol +525 -0
  107. package/contracts/minter-suite/Minters/MinterHolderV4.sol +752 -0
  108. package/contracts/minter-suite/Minters/MinterMerkleV5.sol +688 -0
  109. package/contracts/minter-suite/Minters/MinterSetPriceERC20V4.sol +451 -0
  110. package/contracts/minter-suite/Minters/MinterSetPriceV4.sol +352 -0
  111. package/contracts/mock/GenArt721CoreV3_Engine_IncorrectCoreType.sol +1979 -0
  112. package/package.json +1 -1
  113. package/artifacts/contracts/minter-suite/Minters/MinterHolder/MinterHolderV2.sol/MinterHolderV2.json +0 -794
@@ -0,0 +1,719 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "MinterHolderV1",
4
+ "sourceName": "contracts/archive/minter-suite/Minters/MinterHolder/MinterHolderV1.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "_genArt721Address",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "_minterFilter",
16
+ "type": "address"
17
+ }
18
+ ],
19
+ "stateMutability": "nonpayable",
20
+ "type": "constructor"
21
+ },
22
+ {
23
+ "anonymous": false,
24
+ "inputs": [
25
+ {
26
+ "indexed": true,
27
+ "internalType": "uint256",
28
+ "name": "_projectId",
29
+ "type": "uint256"
30
+ },
31
+ {
32
+ "indexed": false,
33
+ "internalType": "address[]",
34
+ "name": "_ownedNFTAddresses",
35
+ "type": "address[]"
36
+ },
37
+ {
38
+ "indexed": false,
39
+ "internalType": "uint256[]",
40
+ "name": "_ownedNFTProjectIds",
41
+ "type": "uint256[]"
42
+ }
43
+ ],
44
+ "name": "AllowedHoldersOfProjects",
45
+ "type": "event"
46
+ },
47
+ {
48
+ "anonymous": false,
49
+ "inputs": [
50
+ {
51
+ "indexed": true,
52
+ "internalType": "uint256",
53
+ "name": "_projectId",
54
+ "type": "uint256"
55
+ },
56
+ {
57
+ "indexed": true,
58
+ "internalType": "uint256",
59
+ "name": "_pricePerTokenInWei",
60
+ "type": "uint256"
61
+ }
62
+ ],
63
+ "name": "PricePerTokenInWeiUpdated",
64
+ "type": "event"
65
+ },
66
+ {
67
+ "anonymous": false,
68
+ "inputs": [
69
+ {
70
+ "indexed": true,
71
+ "internalType": "uint256",
72
+ "name": "_projectId",
73
+ "type": "uint256"
74
+ },
75
+ {
76
+ "indexed": true,
77
+ "internalType": "address",
78
+ "name": "_currencyAddress",
79
+ "type": "address"
80
+ },
81
+ {
82
+ "indexed": false,
83
+ "internalType": "string",
84
+ "name": "_currencySymbol",
85
+ "type": "string"
86
+ }
87
+ ],
88
+ "name": "ProjectCurrencyInfoUpdated",
89
+ "type": "event"
90
+ },
91
+ {
92
+ "anonymous": false,
93
+ "inputs": [
94
+ {
95
+ "indexed": true,
96
+ "internalType": "uint256",
97
+ "name": "_projectId",
98
+ "type": "uint256"
99
+ },
100
+ {
101
+ "indexed": false,
102
+ "internalType": "bool",
103
+ "name": "_purchaseToDisabled",
104
+ "type": "bool"
105
+ }
106
+ ],
107
+ "name": "PurchaseToDisabledUpdated",
108
+ "type": "event"
109
+ },
110
+ {
111
+ "anonymous": false,
112
+ "inputs": [
113
+ {
114
+ "indexed": true,
115
+ "internalType": "address",
116
+ "name": "_NFTAddress",
117
+ "type": "address"
118
+ }
119
+ ],
120
+ "name": "RegisteredNFTAddress",
121
+ "type": "event"
122
+ },
123
+ {
124
+ "anonymous": false,
125
+ "inputs": [
126
+ {
127
+ "indexed": true,
128
+ "internalType": "uint256",
129
+ "name": "_projectId",
130
+ "type": "uint256"
131
+ },
132
+ {
133
+ "indexed": false,
134
+ "internalType": "address[]",
135
+ "name": "_ownedNFTAddresses",
136
+ "type": "address[]"
137
+ },
138
+ {
139
+ "indexed": false,
140
+ "internalType": "uint256[]",
141
+ "name": "_ownedNFTProjectIds",
142
+ "type": "uint256[]"
143
+ }
144
+ ],
145
+ "name": "RemovedHoldersOfProjects",
146
+ "type": "event"
147
+ },
148
+ {
149
+ "anonymous": false,
150
+ "inputs": [
151
+ {
152
+ "indexed": true,
153
+ "internalType": "address",
154
+ "name": "_NFTAddress",
155
+ "type": "address"
156
+ }
157
+ ],
158
+ "name": "UnregisteredNFTAddress",
159
+ "type": "event"
160
+ },
161
+ {
162
+ "inputs": [
163
+ {
164
+ "internalType": "uint256",
165
+ "name": "_projectId",
166
+ "type": "uint256"
167
+ },
168
+ {
169
+ "internalType": "address[]",
170
+ "name": "_ownedNFTAddresses",
171
+ "type": "address[]"
172
+ },
173
+ {
174
+ "internalType": "uint256[]",
175
+ "name": "_ownedNFTProjectIds",
176
+ "type": "uint256[]"
177
+ }
178
+ ],
179
+ "name": "allowHoldersOfProjects",
180
+ "outputs": [],
181
+ "stateMutability": "nonpayable",
182
+ "type": "function"
183
+ },
184
+ {
185
+ "inputs": [
186
+ {
187
+ "internalType": "uint256",
188
+ "name": "_projectId",
189
+ "type": "uint256"
190
+ },
191
+ {
192
+ "internalType": "address[]",
193
+ "name": "_ownedNFTAddressesAdd",
194
+ "type": "address[]"
195
+ },
196
+ {
197
+ "internalType": "uint256[]",
198
+ "name": "_ownedNFTProjectIdsAdd",
199
+ "type": "uint256[]"
200
+ },
201
+ {
202
+ "internalType": "address[]",
203
+ "name": "_ownedNFTAddressesRemove",
204
+ "type": "address[]"
205
+ },
206
+ {
207
+ "internalType": "uint256[]",
208
+ "name": "_ownedNFTProjectIdsRemove",
209
+ "type": "uint256[]"
210
+ }
211
+ ],
212
+ "name": "allowRemoveHoldersOfProjects",
213
+ "outputs": [],
214
+ "stateMutability": "nonpayable",
215
+ "type": "function"
216
+ },
217
+ {
218
+ "inputs": [
219
+ {
220
+ "internalType": "uint256",
221
+ "name": "",
222
+ "type": "uint256"
223
+ },
224
+ {
225
+ "internalType": "address",
226
+ "name": "",
227
+ "type": "address"
228
+ },
229
+ {
230
+ "internalType": "uint256",
231
+ "name": "",
232
+ "type": "uint256"
233
+ }
234
+ ],
235
+ "name": "allowedProjectHolders",
236
+ "outputs": [
237
+ {
238
+ "internalType": "bool",
239
+ "name": "",
240
+ "type": "bool"
241
+ }
242
+ ],
243
+ "stateMutability": "view",
244
+ "type": "function"
245
+ },
246
+ {
247
+ "inputs": [],
248
+ "name": "genArt721CoreAddress",
249
+ "outputs": [
250
+ {
251
+ "internalType": "address",
252
+ "name": "",
253
+ "type": "address"
254
+ }
255
+ ],
256
+ "stateMutability": "view",
257
+ "type": "function"
258
+ },
259
+ {
260
+ "inputs": [],
261
+ "name": "getNumRegisteredNFTAddresses",
262
+ "outputs": [
263
+ {
264
+ "internalType": "uint256",
265
+ "name": "",
266
+ "type": "uint256"
267
+ }
268
+ ],
269
+ "stateMutability": "view",
270
+ "type": "function"
271
+ },
272
+ {
273
+ "inputs": [
274
+ {
275
+ "internalType": "uint256",
276
+ "name": "_projectId",
277
+ "type": "uint256"
278
+ }
279
+ ],
280
+ "name": "getPriceInfo",
281
+ "outputs": [
282
+ {
283
+ "internalType": "bool",
284
+ "name": "isConfigured",
285
+ "type": "bool"
286
+ },
287
+ {
288
+ "internalType": "uint256",
289
+ "name": "tokenPriceInWei",
290
+ "type": "uint256"
291
+ },
292
+ {
293
+ "internalType": "string",
294
+ "name": "currencySymbol",
295
+ "type": "string"
296
+ },
297
+ {
298
+ "internalType": "address",
299
+ "name": "currencyAddress",
300
+ "type": "address"
301
+ }
302
+ ],
303
+ "stateMutability": "view",
304
+ "type": "function"
305
+ },
306
+ {
307
+ "inputs": [
308
+ {
309
+ "internalType": "uint256",
310
+ "name": "_index",
311
+ "type": "uint256"
312
+ }
313
+ ],
314
+ "name": "getRegisteredNFTAddressAt",
315
+ "outputs": [
316
+ {
317
+ "internalType": "address",
318
+ "name": "NFTAddress",
319
+ "type": "address"
320
+ }
321
+ ],
322
+ "stateMutability": "view",
323
+ "type": "function"
324
+ },
325
+ {
326
+ "inputs": [
327
+ {
328
+ "internalType": "uint256",
329
+ "name": "_projectId",
330
+ "type": "uint256"
331
+ },
332
+ {
333
+ "internalType": "address",
334
+ "name": "_ownedNFTAddress",
335
+ "type": "address"
336
+ },
337
+ {
338
+ "internalType": "uint256",
339
+ "name": "_ownedNFTTokenId",
340
+ "type": "uint256"
341
+ }
342
+ ],
343
+ "name": "isAllowlistedNFT",
344
+ "outputs": [
345
+ {
346
+ "internalType": "bool",
347
+ "name": "",
348
+ "type": "bool"
349
+ }
350
+ ],
351
+ "stateMutability": "view",
352
+ "type": "function"
353
+ },
354
+ {
355
+ "inputs": [],
356
+ "name": "minterFilterAddress",
357
+ "outputs": [
358
+ {
359
+ "internalType": "address",
360
+ "name": "",
361
+ "type": "address"
362
+ }
363
+ ],
364
+ "stateMutability": "view",
365
+ "type": "function"
366
+ },
367
+ {
368
+ "inputs": [],
369
+ "name": "minterType",
370
+ "outputs": [
371
+ {
372
+ "internalType": "string",
373
+ "name": "",
374
+ "type": "string"
375
+ }
376
+ ],
377
+ "stateMutability": "view",
378
+ "type": "function"
379
+ },
380
+ {
381
+ "inputs": [
382
+ {
383
+ "internalType": "uint256",
384
+ "name": "",
385
+ "type": "uint256"
386
+ }
387
+ ],
388
+ "name": "projectConfig",
389
+ "outputs": [
390
+ {
391
+ "internalType": "bool",
392
+ "name": "maxHasBeenInvoked",
393
+ "type": "bool"
394
+ },
395
+ {
396
+ "internalType": "bool",
397
+ "name": "priceIsConfigured",
398
+ "type": "bool"
399
+ },
400
+ {
401
+ "internalType": "uint24",
402
+ "name": "maxInvocations",
403
+ "type": "uint24"
404
+ },
405
+ {
406
+ "internalType": "uint256",
407
+ "name": "pricePerTokenInWei",
408
+ "type": "uint256"
409
+ }
410
+ ],
411
+ "stateMutability": "view",
412
+ "type": "function"
413
+ },
414
+ {
415
+ "inputs": [
416
+ {
417
+ "internalType": "uint256",
418
+ "name": "_projectId",
419
+ "type": "uint256"
420
+ }
421
+ ],
422
+ "name": "projectMaxHasBeenInvoked",
423
+ "outputs": [
424
+ {
425
+ "internalType": "bool",
426
+ "name": "",
427
+ "type": "bool"
428
+ }
429
+ ],
430
+ "stateMutability": "view",
431
+ "type": "function"
432
+ },
433
+ {
434
+ "inputs": [
435
+ {
436
+ "internalType": "uint256",
437
+ "name": "_projectId",
438
+ "type": "uint256"
439
+ }
440
+ ],
441
+ "name": "projectMaxInvocations",
442
+ "outputs": [
443
+ {
444
+ "internalType": "uint256",
445
+ "name": "",
446
+ "type": "uint256"
447
+ }
448
+ ],
449
+ "stateMutability": "view",
450
+ "type": "function"
451
+ },
452
+ {
453
+ "inputs": [
454
+ {
455
+ "internalType": "uint256",
456
+ "name": "_projectId",
457
+ "type": "uint256"
458
+ },
459
+ {
460
+ "internalType": "address",
461
+ "name": "_ownedNFTAddress",
462
+ "type": "address"
463
+ },
464
+ {
465
+ "internalType": "uint256",
466
+ "name": "_ownedNFTTokenId",
467
+ "type": "uint256"
468
+ }
469
+ ],
470
+ "name": "purchase",
471
+ "outputs": [
472
+ {
473
+ "internalType": "uint256",
474
+ "name": "tokenId",
475
+ "type": "uint256"
476
+ }
477
+ ],
478
+ "stateMutability": "payable",
479
+ "type": "function"
480
+ },
481
+ {
482
+ "inputs": [
483
+ {
484
+ "internalType": "uint256",
485
+ "name": "",
486
+ "type": "uint256"
487
+ }
488
+ ],
489
+ "name": "purchase",
490
+ "outputs": [
491
+ {
492
+ "internalType": "uint256",
493
+ "name": "",
494
+ "type": "uint256"
495
+ }
496
+ ],
497
+ "stateMutability": "payable",
498
+ "type": "function"
499
+ },
500
+ {
501
+ "inputs": [
502
+ {
503
+ "internalType": "address",
504
+ "name": "",
505
+ "type": "address"
506
+ },
507
+ {
508
+ "internalType": "uint256",
509
+ "name": "",
510
+ "type": "uint256"
511
+ }
512
+ ],
513
+ "name": "purchaseTo",
514
+ "outputs": [
515
+ {
516
+ "internalType": "uint256",
517
+ "name": "",
518
+ "type": "uint256"
519
+ }
520
+ ],
521
+ "stateMutability": "payable",
522
+ "type": "function"
523
+ },
524
+ {
525
+ "inputs": [
526
+ {
527
+ "internalType": "address",
528
+ "name": "_to",
529
+ "type": "address"
530
+ },
531
+ {
532
+ "internalType": "uint256",
533
+ "name": "_projectId",
534
+ "type": "uint256"
535
+ },
536
+ {
537
+ "internalType": "address",
538
+ "name": "_ownedNFTAddress",
539
+ "type": "address"
540
+ },
541
+ {
542
+ "internalType": "uint256",
543
+ "name": "_ownedNFTTokenId",
544
+ "type": "uint256"
545
+ }
546
+ ],
547
+ "name": "purchaseTo",
548
+ "outputs": [
549
+ {
550
+ "internalType": "uint256",
551
+ "name": "tokenId",
552
+ "type": "uint256"
553
+ }
554
+ ],
555
+ "stateMutability": "payable",
556
+ "type": "function"
557
+ },
558
+ {
559
+ "inputs": [
560
+ {
561
+ "internalType": "address",
562
+ "name": "_to",
563
+ "type": "address"
564
+ },
565
+ {
566
+ "internalType": "uint256",
567
+ "name": "_projectId",
568
+ "type": "uint256"
569
+ },
570
+ {
571
+ "internalType": "address",
572
+ "name": "_ownedNFTAddress",
573
+ "type": "address"
574
+ },
575
+ {
576
+ "internalType": "uint256",
577
+ "name": "_ownedNFTTokenId",
578
+ "type": "uint256"
579
+ }
580
+ ],
581
+ "name": "purchaseTo_L69",
582
+ "outputs": [
583
+ {
584
+ "internalType": "uint256",
585
+ "name": "tokenId",
586
+ "type": "uint256"
587
+ }
588
+ ],
589
+ "stateMutability": "payable",
590
+ "type": "function"
591
+ },
592
+ {
593
+ "inputs": [
594
+ {
595
+ "internalType": "uint256",
596
+ "name": "_projectId",
597
+ "type": "uint256"
598
+ },
599
+ {
600
+ "internalType": "address",
601
+ "name": "_ownedNFTAddress",
602
+ "type": "address"
603
+ },
604
+ {
605
+ "internalType": "uint256",
606
+ "name": "_ownedNFTTokenId",
607
+ "type": "uint256"
608
+ }
609
+ ],
610
+ "name": "purchase_nnf",
611
+ "outputs": [
612
+ {
613
+ "internalType": "uint256",
614
+ "name": "tokenId",
615
+ "type": "uint256"
616
+ }
617
+ ],
618
+ "stateMutability": "payable",
619
+ "type": "function"
620
+ },
621
+ {
622
+ "inputs": [
623
+ {
624
+ "internalType": "address",
625
+ "name": "_NFTAddress",
626
+ "type": "address"
627
+ }
628
+ ],
629
+ "name": "registerNFTAddress",
630
+ "outputs": [],
631
+ "stateMutability": "nonpayable",
632
+ "type": "function"
633
+ },
634
+ {
635
+ "inputs": [
636
+ {
637
+ "internalType": "uint256",
638
+ "name": "_projectId",
639
+ "type": "uint256"
640
+ },
641
+ {
642
+ "internalType": "address[]",
643
+ "name": "_ownedNFTAddresses",
644
+ "type": "address[]"
645
+ },
646
+ {
647
+ "internalType": "uint256[]",
648
+ "name": "_ownedNFTProjectIds",
649
+ "type": "uint256[]"
650
+ }
651
+ ],
652
+ "name": "removeHoldersOfProjects",
653
+ "outputs": [],
654
+ "stateMutability": "nonpayable",
655
+ "type": "function"
656
+ },
657
+ {
658
+ "inputs": [
659
+ {
660
+ "internalType": "uint256",
661
+ "name": "_projectId",
662
+ "type": "uint256"
663
+ }
664
+ ],
665
+ "name": "setProjectMaxInvocations",
666
+ "outputs": [],
667
+ "stateMutability": "nonpayable",
668
+ "type": "function"
669
+ },
670
+ {
671
+ "inputs": [
672
+ {
673
+ "internalType": "uint256",
674
+ "name": "_projectId",
675
+ "type": "uint256"
676
+ }
677
+ ],
678
+ "name": "togglePurchaseToDisabled",
679
+ "outputs": [],
680
+ "stateMutability": "view",
681
+ "type": "function"
682
+ },
683
+ {
684
+ "inputs": [
685
+ {
686
+ "internalType": "address",
687
+ "name": "_NFTAddress",
688
+ "type": "address"
689
+ }
690
+ ],
691
+ "name": "unregisterNFTAddress",
692
+ "outputs": [],
693
+ "stateMutability": "nonpayable",
694
+ "type": "function"
695
+ },
696
+ {
697
+ "inputs": [
698
+ {
699
+ "internalType": "uint256",
700
+ "name": "_projectId",
701
+ "type": "uint256"
702
+ },
703
+ {
704
+ "internalType": "uint256",
705
+ "name": "_pricePerTokenInWei",
706
+ "type": "uint256"
707
+ }
708
+ ],
709
+ "name": "updatePricePerTokenInWei",
710
+ "outputs": [],
711
+ "stateMutability": "nonpayable",
712
+ "type": "function"
713
+ }
714
+ ],
715
+ "bytecode": "0x6101006040523480156200001257600080fd5b50604051620021c0380380620021c0833981016040819052620000359162000147565b600160009081556001600160a01b03808416608081905260a081905290831660c081905260e0819052604080516392a10f8360e01b81529051929391926392a10f83926004808401936020939290839003909101908290875af1158015620000a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000c791906200017f565b6001600160a01b031614620001225760405162461bcd60e51b815260206004820152601860248201527f496c6c6567616c20636f6e74726163742070616972696e670000000000000000604482015260640160405180910390fd5b5050620001a4565b80516001600160a01b03811681146200014257600080fd5b919050565b600080604083850312156200015b57600080fd5b62000166836200012a565b915062000176602084016200012a565b90509250929050565b6000602082840312156200019257600080fd5b6200019d826200012a565b9392505050565b60805160a05160c05160e051611faa6200021660003960006107510152600061049b0152600081816108da015281816109ce01528181610ac801528181610ba901528181610c9d01528181610dab01528181611076015281816112dc01526114330152600061036a0152611faa6000f3fe6080604052600436106101225760003560e01c8061aa5214610127578061fe5d1461014d5780630ed79c4e1461016057806340d1397e14610182578063462add46146101a25780634fd1b70e146101e25780634ff5759d1461020257806356690aaf14610222578063650e5d6d146101275780636cb9b7ff1461025a578063774159c61461027a5780637994db09146102e4578063891407c01461030457806390d355b71461031757806392a10f831461035857806399c0bbdc146103a4578063a647300c146103b9578063b00abb64146103d9578063bc8ff001146103ec578063c71b1b711461040c578063dd85582f14610489578063e2849bd5146104bd578063e9d1e8ac146104dd578063efef39a114610524578063f7bd4b8814610532575b600080fd5b61013a6101353660046118bb565b610552565b6040519081526020015b60405180910390f35b61013a61015b3660046118f3565b610568565b34801561016c57600080fd5b5061018061017b36600461193b565b6108ba565b005b34801561018e57600080fd5b5061018061019d366004611958565b6109b6565b3480156101ae57600080fd5b506101d26101bd366004611958565b60009081526001602052604090205460ff1690565b6040519015158152602001610144565b3480156101ee57600080fd5b506101806101fd366004611aa9565b610ab0565b34801561020e57600080fd5b5061018061021d36600461193b565b610b89565b34801561022e57600080fd5b5061013a61023d366004611958565b60009081526001602052604090205462010000900462ffffff1690565b34801561026657600080fd5b50610180610275366004611b5f565b610c85565b34801561028657600080fd5b506102d4610295366004611958565b600090815260016020818152604080842080549301548151808301909252600382526208aa8960eb1b9282019290925261010090920460ff1693909290565b6040516101449493929190611bc7565b3480156102f057600080fd5b506101806102ff366004611c01565b610d93565b61013a610312366004611c6d565b611007565b34801561032357600080fd5b506101d26103323660046118bb565b600460209081526000938452604080852082529284528284209052825290205460ff1681565b34801561036457600080fd5b5061038c7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610144565b3480156103b057600080fd5b5061013a61104d565b3480156103c557600080fd5b506101806103d4366004611c01565b61105e565b61013a6103e73660046118f3565b611254565b3480156103f857600080fd5b5061038c610407366004611958565b61126b565b34801561041857600080fd5b5061045c610427366004611958565b6001602081905260009182526040909120805491015460ff808316926101008104909116916201000090910462ffffff169084565b60405161014494939291909315158452911515602084015262ffffff166040830152606082015260800190565b34801561049557600080fd5b5061038c7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104c957600080fd5b506101d26104d83660046118bb565b61127e565b3480156104e957600080fd5b506105176040518060400160405280600e81526020016d4d696e746572486f6c646572563160901b81525081565b6040516101449190611c99565b61013a610312366004611958565b34801561053e57600080fd5b5061018061054d366004611958565b6112c3565b600061056033858585610568565b949350505050565b60006002600054036105c15760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b60026000908155848152600160205260409020805460ff16156106345760405162461bcd60e51b815260206004820152602560248201527f4d6178696d756d206e756d626572206f6620696e766f636174696f6e732072656044820152641858da195960da1b60648201526084016105b8565b6001810154348111156106895760405162461bcd60e51b815260206004820181905260248201527f4d7573742073656e64206d696e696d756d2076616c756520746f206d696e742160448201526064016105b8565b8154610100900460ff166106d65760405162461bcd60e51b8152602060048201526014602482015273141c9a58d9481b9bdd0818dbdb999a59dd5c995960621b60448201526064016105b8565b6106e186868661127e565b6107255760405162461bcd60e51b81526020600482015260156024820152744f6e6c7920616c6c6f776c6973746564204e46547360581b60448201526064016105b8565b604051630d4d151360e01b81526001600160a01b038881166004830152602482018890523360448301527f00000000000000000000000000000000000000000000000000000000000000001690630d4d1513906064016020604051808303816000875af115801561079a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107be9190611cac565b825490935060001962ffffff6201000090920482160116620f42408406036107ec57815460ff191660011782555b6040516331a9108f60e11b81526004810185905233906001600160a01b03871690636352211e90602401602060405180830381865afa158015610833573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108579190611cc5565b6001600160a01b0316146108a15760405162461bcd60e51b815260206004820152601160248201527013db9b1e481bdddb995c881bd988139195607a1b60448201526064016105b8565b6108ab8682611385565b50506001600055949350505050565b60405163230448b160e01b815263076bce2760e11b906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063230448b19061091390339030908690600401611ce2565b6020604051808303816000875af1158015610932573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109569190611d24565b6109725760405162461bcd60e51b81526004016105b890611d3f565b61097d6002836116ce565b506040516001600160a01b038316907f7475e948f72f2714b1984b09949d13da2ddbae9f91e31da0faa380c0095b971c90600090a25050565b60405163a47d29cb60e01b81526004810182905281907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015610a1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a419190611cc5565b6001600160a01b0316336001600160a01b031614610a715760405162461bcd60e51b81526004016105b890611d73565b60405162461bcd60e51b81526020600482015260146024820152731058dd1a5bdb881b9bdd081cdd5c1c1bdc9d195960621b60448201526064016105b8565b60405163a47d29cb60e01b81526004810186905285907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015610b17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3b9190611cc5565b6001600160a01b0316336001600160a01b031614610b6b5760405162461bcd60e51b81526004016105b890611d73565b610b76868686610d93565b610b8186848461105e565b505050505050565b60405163230448b160e01b8152634ff5759d60e01b906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063230448b190610be290339030908690600401611ce2565b6020604051808303816000875af1158015610c01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c259190611d24565b610c415760405162461bcd60e51b81526004016105b890611d3f565b610c4c6002836116ea565b506040516001600160a01b038316907f16e28d6cac0e892c58cee90af3dc883220abe36e25201d7117c4f3aaabf1c3f090600090a25050565b60405163a47d29cb60e01b81526004810183905282907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015610cec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d109190611cc5565b6001600160a01b0316336001600160a01b031614610d405760405162461bcd60e51b81526004016105b890611d73565b6000838152600160208190526040808320918201859055815461ff0019166101001790915551839185917f26118a27aca826f829f3bfe21b140b4455c00b434849bd0da50d1e1a9720fb5c9190a3505050565b60405163a47d29cb60e01b81526004810184905283907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015610dfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1e9190611cc5565b6001600160a01b0316336001600160a01b031614610e4e5760405162461bcd60e51b81526004016105b890611d73565b8151835114610e9f5760405162461bcd60e51b815260206004820152601f60248201527f4c656e677468206f662061646420617272617973206d757374206d617463680060448201526064016105b8565b60005b8351811015610fc657610ed8848281518110610ec057610ec0611d98565b602002602001015160026116ff90919063ffffffff16565b610f245760405162461bcd60e51b815260206004820152601d60248201527f4f6e6c792052656769737465726564204e46542041646472657373657300000060448201526064016105b8565b6000858152600460205260408120855160019290879085908110610f4a57610f4a611d98565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000858481518110610f8657610f86611d98565b6020026020010151815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610fbe90611dc4565b915050610ea2565b50837fba2ec6d92cd62364c8e443b484b3e1f72f1ee9e161c1f871de1a60d83c89558b8484604051610ff9929190611ddd565b60405180910390a250505050565b60405162461bcd60e51b815260206004820152601860248201527704d75737420636c61696d204e4654206f776e6572736869760441b60448201526000906064016105b8565b60006110596002611721565b905090565b60405163a47d29cb60e01b81526004810184905283907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa1580156110c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e99190611cc5565b6001600160a01b0316336001600160a01b0316146111195760405162461bcd60e51b81526004016105b890611d73565b81518351146111755760405162461bcd60e51b815260206004820152602260248201527f4c656e677468206f662072656d6f766520617272617973206d757374206d61746044820152610c6d60f31b60648201526084016105b8565b60005b8351811015611221576000858152600460205260408120855182908790859081106111a5576111a5611d98565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008584815181106111e1576111e1611d98565b6020026020010151815260200190815260200160002060006101000a81548160ff021916908315150217905550808061121990611dc4565b915050611178565b50837f2e3dced83b61aee20d72f4bdc7e6997a0f8616af4067d3aa92afe2b9b0532d1c8484604051610ff9929190611ddd565b600061126285858585610568565b95945050505050565b600061127860028361172b565b92915050565b60008061128e620f424084611e61565b60009586526004602090815260408088206001600160a01b039790971688529581528587209187525250505090205460ff1690565b604051630ea5613f60e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690630ea5613f9060240160c060405180830381865afa15801561132b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134f9190611e83565b50505060009485525060016020526040909320805462ffffff909416620100000264ffffff000019909416939093179092555050565b34156116ca576000806113988334611ee2565b905080156114285760405133908290600081818185875af1925050503d80600081146113e0576040519150601f19603f3d011682016040523d82523d6000602084013e6113e5565b606091505b505080925050816114285760405162461bcd60e51b815260206004820152600d60248201526c1499599d5b990819985a5b1959609a1b60448201526064016105b8565b6000806000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638639415b8b8b6040518363ffffffff1660e01b8152600401611488929190918252602082015260400190565b60c060405180830381865afa1580156114a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c99190611ef5565b955095509550955095509550600086111561157b576040516001600160a01b038616908790600081818185875af1925050503d8060008114611527576040519150601f19603f3d011682016040523d82523d6000602084013e61152c565b606091505b5050809850508761157b5760405162461bcd60e51b8152602060048201526019602482015278105c9d08109b1bd8dadcc81c185e5b595b9d0819985a5b1959603a1b60448201526064016105b8565b831561161a576040516001600160a01b038416908590600081818185875af1925050503d80600081146115ca576040519150601f19603f3d011682016040523d82523d6000602084013e6115cf565b606091505b5050809850508761161a5760405162461bcd60e51b8152602060048201526015602482015274105c9d1a5cdd081c185e5b595b9d0819985a5b1959605a1b60448201526064016105b8565b81156116c1576040516001600160a01b038216908390600081818185875af1925050503d8060008114611669576040519150601f19603f3d011682016040523d82523d6000602084013e61166e565b606091505b505080985050876116c15760405162461bcd60e51b815260206004820152601f60248201527f4164646974696f6e616c205061796565207061796d656e74206661696c65640060448201526064016105b8565b50505050505050505b5050565b60006116e3836001600160a01b038416611737565b9392505050565b60006116e3836001600160a01b038416611786565b6001600160a01b038116600090815260018301602052604081205415156116e3565b6000611278825490565b60006116e38383611879565b600081815260018301602052604081205461177e57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611278565b506000611278565b6000818152600183016020526040812054801561186f5760006117aa600183611ee2565b85549091506000906117be90600190611ee2565b90508181146118235760008660000182815481106117de576117de611d98565b906000526020600020015490508087600001848154811061180157611801611d98565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061183457611834611f5e565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611278565b6000915050611278565b600082600001828154811061189057611890611d98565b9060005260206000200154905092915050565b6001600160a01b03811681146118b857600080fd5b50565b6000806000606084860312156118d057600080fd5b8335925060208401356118e2816118a3565b929592945050506040919091013590565b6000806000806080858703121561190957600080fd5b8435611914816118a3565b935060208501359250604085013561192b816118a3565b9396929550929360600135925050565b60006020828403121561194d57600080fd5b81356116e3816118a3565b60006020828403121561196a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156119af576119af611971565b604052919050565b60006001600160401b038211156119d0576119d0611971565b5060051b60200190565b600082601f8301126119eb57600080fd5b81356020611a006119fb836119b7565b611987565b82815260059290921b84018101918181019086841115611a1f57600080fd5b8286015b84811015611a43578035611a36816118a3565b8352918301918301611a23565b509695505050505050565b600082601f830112611a5f57600080fd5b81356020611a6f6119fb836119b7565b82815260059290921b84018101918181019086841115611a8e57600080fd5b8286015b84811015611a435780358352918301918301611a92565b600080600080600060a08688031215611ac157600080fd5b8535945060208601356001600160401b0380821115611adf57600080fd5b611aeb89838a016119da565b95506040880135915080821115611b0157600080fd5b611b0d89838a01611a4e565b94506060880135915080821115611b2357600080fd5b611b2f89838a016119da565b93506080880135915080821115611b4557600080fd5b50611b5288828901611a4e565b9150509295509295909350565b60008060408385031215611b7257600080fd5b50508035926020909101359150565b6000815180845260005b81811015611ba757602081850181015186830182015201611b8b565b506000602082860101526020601f19601f83011685010191505092915050565b8415158152836020820152608060408201526000611be86080830185611b81565b905060018060a01b038316606083015295945050505050565b600080600060608486031215611c1657600080fd5b8335925060208401356001600160401b0380821115611c3457600080fd5b611c40878388016119da565b93506040860135915080821115611c5657600080fd5b50611c6386828701611a4e565b9150509250925092565b60008060408385031215611c8057600080fd5b8235611c8b816118a3565b946020939093013593505050565b6020815260006116e36020830184611b81565b600060208284031215611cbe57600080fd5b5051919050565b600060208284031215611cd757600080fd5b81516116e3816118a3565b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b80518015158114611d1f57600080fd5b919050565b600060208284031215611d3657600080fd5b6116e382611d0f565b6020808252601a908201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604082015260600190565b6020808252600b908201526a13db9b1e48105c9d1a5cdd60aa1b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611dd657611dd6611dae565b5060010190565b604080825283519082018190526000906020906060840190828701845b82811015611e1f5781516001600160a01b031684529284019290840190600101611dfa565b5050508381038285015284518082528583019183019060005b81811015611e5457835183529284019291840191600101611e38565b5090979650505050505050565b600082611e7e57634e487b7160e01b600052601260045260246000fd5b500490565b60008060008060008060c08789031215611e9c57600080fd5b8651955060208701519450611eb360408801611d0f565b9350611ec160608801611d0f565b925060808701519150611ed660a08801611d0f565b90509295509295509295565b8181038181111561127857611278611dae565b60008060008060008060c08789031215611f0e57600080fd5b865195506020870151611f20816118a3565b604088015160608901519196509450611f38816118a3565b608088015160a08901519194509250611f50816118a3565b809150509295509295509295565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220e528303f98c319dcbd3c67a1a0ef40af60a26df3e17ef791afac994852b3091164736f6c63430008110033",
716
+ "deployedBytecode": "0x6080604052600436106101225760003560e01c8061aa5214610127578061fe5d1461014d5780630ed79c4e1461016057806340d1397e14610182578063462add46146101a25780634fd1b70e146101e25780634ff5759d1461020257806356690aaf14610222578063650e5d6d146101275780636cb9b7ff1461025a578063774159c61461027a5780637994db09146102e4578063891407c01461030457806390d355b71461031757806392a10f831461035857806399c0bbdc146103a4578063a647300c146103b9578063b00abb64146103d9578063bc8ff001146103ec578063c71b1b711461040c578063dd85582f14610489578063e2849bd5146104bd578063e9d1e8ac146104dd578063efef39a114610524578063f7bd4b8814610532575b600080fd5b61013a6101353660046118bb565b610552565b6040519081526020015b60405180910390f35b61013a61015b3660046118f3565b610568565b34801561016c57600080fd5b5061018061017b36600461193b565b6108ba565b005b34801561018e57600080fd5b5061018061019d366004611958565b6109b6565b3480156101ae57600080fd5b506101d26101bd366004611958565b60009081526001602052604090205460ff1690565b6040519015158152602001610144565b3480156101ee57600080fd5b506101806101fd366004611aa9565b610ab0565b34801561020e57600080fd5b5061018061021d36600461193b565b610b89565b34801561022e57600080fd5b5061013a61023d366004611958565b60009081526001602052604090205462010000900462ffffff1690565b34801561026657600080fd5b50610180610275366004611b5f565b610c85565b34801561028657600080fd5b506102d4610295366004611958565b600090815260016020818152604080842080549301548151808301909252600382526208aa8960eb1b9282019290925261010090920460ff1693909290565b6040516101449493929190611bc7565b3480156102f057600080fd5b506101806102ff366004611c01565b610d93565b61013a610312366004611c6d565b611007565b34801561032357600080fd5b506101d26103323660046118bb565b600460209081526000938452604080852082529284528284209052825290205460ff1681565b34801561036457600080fd5b5061038c7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610144565b3480156103b057600080fd5b5061013a61104d565b3480156103c557600080fd5b506101806103d4366004611c01565b61105e565b61013a6103e73660046118f3565b611254565b3480156103f857600080fd5b5061038c610407366004611958565b61126b565b34801561041857600080fd5b5061045c610427366004611958565b6001602081905260009182526040909120805491015460ff808316926101008104909116916201000090910462ffffff169084565b60405161014494939291909315158452911515602084015262ffffff166040830152606082015260800190565b34801561049557600080fd5b5061038c7f000000000000000000000000000000000000000000000000000000000000000081565b3480156104c957600080fd5b506101d26104d83660046118bb565b61127e565b3480156104e957600080fd5b506105176040518060400160405280600e81526020016d4d696e746572486f6c646572563160901b81525081565b6040516101449190611c99565b61013a610312366004611958565b34801561053e57600080fd5b5061018061054d366004611958565b6112c3565b600061056033858585610568565b949350505050565b60006002600054036105c15760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b60026000908155848152600160205260409020805460ff16156106345760405162461bcd60e51b815260206004820152602560248201527f4d6178696d756d206e756d626572206f6620696e766f636174696f6e732072656044820152641858da195960da1b60648201526084016105b8565b6001810154348111156106895760405162461bcd60e51b815260206004820181905260248201527f4d7573742073656e64206d696e696d756d2076616c756520746f206d696e742160448201526064016105b8565b8154610100900460ff166106d65760405162461bcd60e51b8152602060048201526014602482015273141c9a58d9481b9bdd0818dbdb999a59dd5c995960621b60448201526064016105b8565b6106e186868661127e565b6107255760405162461bcd60e51b81526020600482015260156024820152744f6e6c7920616c6c6f776c6973746564204e46547360581b60448201526064016105b8565b604051630d4d151360e01b81526001600160a01b038881166004830152602482018890523360448301527f00000000000000000000000000000000000000000000000000000000000000001690630d4d1513906064016020604051808303816000875af115801561079a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107be9190611cac565b825490935060001962ffffff6201000090920482160116620f42408406036107ec57815460ff191660011782555b6040516331a9108f60e11b81526004810185905233906001600160a01b03871690636352211e90602401602060405180830381865afa158015610833573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108579190611cc5565b6001600160a01b0316146108a15760405162461bcd60e51b815260206004820152601160248201527013db9b1e481bdddb995c881bd988139195607a1b60448201526064016105b8565b6108ab8682611385565b50506001600055949350505050565b60405163230448b160e01b815263076bce2760e11b906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063230448b19061091390339030908690600401611ce2565b6020604051808303816000875af1158015610932573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109569190611d24565b6109725760405162461bcd60e51b81526004016105b890611d3f565b61097d6002836116ce565b506040516001600160a01b038316907f7475e948f72f2714b1984b09949d13da2ddbae9f91e31da0faa380c0095b971c90600090a25050565b60405163a47d29cb60e01b81526004810182905281907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015610a1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a419190611cc5565b6001600160a01b0316336001600160a01b031614610a715760405162461bcd60e51b81526004016105b890611d73565b60405162461bcd60e51b81526020600482015260146024820152731058dd1a5bdb881b9bdd081cdd5c1c1bdc9d195960621b60448201526064016105b8565b60405163a47d29cb60e01b81526004810186905285907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015610b17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3b9190611cc5565b6001600160a01b0316336001600160a01b031614610b6b5760405162461bcd60e51b81526004016105b890611d73565b610b76868686610d93565b610b8186848461105e565b505050505050565b60405163230448b160e01b8152634ff5759d60e01b906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063230448b190610be290339030908690600401611ce2565b6020604051808303816000875af1158015610c01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c259190611d24565b610c415760405162461bcd60e51b81526004016105b890611d3f565b610c4c6002836116ea565b506040516001600160a01b038316907f16e28d6cac0e892c58cee90af3dc883220abe36e25201d7117c4f3aaabf1c3f090600090a25050565b60405163a47d29cb60e01b81526004810183905282907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015610cec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d109190611cc5565b6001600160a01b0316336001600160a01b031614610d405760405162461bcd60e51b81526004016105b890611d73565b6000838152600160208190526040808320918201859055815461ff0019166101001790915551839185917f26118a27aca826f829f3bfe21b140b4455c00b434849bd0da50d1e1a9720fb5c9190a3505050565b60405163a47d29cb60e01b81526004810184905283907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa158015610dfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1e9190611cc5565b6001600160a01b0316336001600160a01b031614610e4e5760405162461bcd60e51b81526004016105b890611d73565b8151835114610e9f5760405162461bcd60e51b815260206004820152601f60248201527f4c656e677468206f662061646420617272617973206d757374206d617463680060448201526064016105b8565b60005b8351811015610fc657610ed8848281518110610ec057610ec0611d98565b602002602001015160026116ff90919063ffffffff16565b610f245760405162461bcd60e51b815260206004820152601d60248201527f4f6e6c792052656769737465726564204e46542041646472657373657300000060448201526064016105b8565b6000858152600460205260408120855160019290879085908110610f4a57610f4a611d98565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000858481518110610f8657610f86611d98565b6020026020010151815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610fbe90611dc4565b915050610ea2565b50837fba2ec6d92cd62364c8e443b484b3e1f72f1ee9e161c1f871de1a60d83c89558b8484604051610ff9929190611ddd565b60405180910390a250505050565b60405162461bcd60e51b815260206004820152601860248201527704d75737420636c61696d204e4654206f776e6572736869760441b60448201526000906064016105b8565b60006110596002611721565b905090565b60405163a47d29cb60e01b81526004810184905283907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a47d29cb90602401602060405180830381865afa1580156110c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110e99190611cc5565b6001600160a01b0316336001600160a01b0316146111195760405162461bcd60e51b81526004016105b890611d73565b81518351146111755760405162461bcd60e51b815260206004820152602260248201527f4c656e677468206f662072656d6f766520617272617973206d757374206d61746044820152610c6d60f31b60648201526084016105b8565b60005b8351811015611221576000858152600460205260408120855182908790859081106111a5576111a5611d98565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008584815181106111e1576111e1611d98565b6020026020010151815260200190815260200160002060006101000a81548160ff021916908315150217905550808061121990611dc4565b915050611178565b50837f2e3dced83b61aee20d72f4bdc7e6997a0f8616af4067d3aa92afe2b9b0532d1c8484604051610ff9929190611ddd565b600061126285858585610568565b95945050505050565b600061127860028361172b565b92915050565b60008061128e620f424084611e61565b60009586526004602090815260408088206001600160a01b039790971688529581528587209187525250505090205460ff1690565b604051630ea5613f60e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690630ea5613f9060240160c060405180830381865afa15801561132b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134f9190611e83565b50505060009485525060016020526040909320805462ffffff909416620100000264ffffff000019909416939093179092555050565b34156116ca576000806113988334611ee2565b905080156114285760405133908290600081818185875af1925050503d80600081146113e0576040519150601f19603f3d011682016040523d82523d6000602084013e6113e5565b606091505b505080925050816114285760405162461bcd60e51b815260206004820152600d60248201526c1499599d5b990819985a5b1959609a1b60448201526064016105b8565b6000806000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638639415b8b8b6040518363ffffffff1660e01b8152600401611488929190918252602082015260400190565b60c060405180830381865afa1580156114a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c99190611ef5565b955095509550955095509550600086111561157b576040516001600160a01b038616908790600081818185875af1925050503d8060008114611527576040519150601f19603f3d011682016040523d82523d6000602084013e61152c565b606091505b5050809850508761157b5760405162461bcd60e51b8152602060048201526019602482015278105c9d08109b1bd8dadcc81c185e5b595b9d0819985a5b1959603a1b60448201526064016105b8565b831561161a576040516001600160a01b038416908590600081818185875af1925050503d80600081146115ca576040519150601f19603f3d011682016040523d82523d6000602084013e6115cf565b606091505b5050809850508761161a5760405162461bcd60e51b8152602060048201526015602482015274105c9d1a5cdd081c185e5b595b9d0819985a5b1959605a1b60448201526064016105b8565b81156116c1576040516001600160a01b038216908390600081818185875af1925050503d8060008114611669576040519150601f19603f3d011682016040523d82523d6000602084013e61166e565b606091505b505080985050876116c15760405162461bcd60e51b815260206004820152601f60248201527f4164646974696f6e616c205061796565207061796d656e74206661696c65640060448201526064016105b8565b50505050505050505b5050565b60006116e3836001600160a01b038416611737565b9392505050565b60006116e3836001600160a01b038416611786565b6001600160a01b038116600090815260018301602052604081205415156116e3565b6000611278825490565b60006116e38383611879565b600081815260018301602052604081205461177e57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611278565b506000611278565b6000818152600183016020526040812054801561186f5760006117aa600183611ee2565b85549091506000906117be90600190611ee2565b90508181146118235760008660000182815481106117de576117de611d98565b906000526020600020015490508087600001848154811061180157611801611d98565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061183457611834611f5e565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611278565b6000915050611278565b600082600001828154811061189057611890611d98565b9060005260206000200154905092915050565b6001600160a01b03811681146118b857600080fd5b50565b6000806000606084860312156118d057600080fd5b8335925060208401356118e2816118a3565b929592945050506040919091013590565b6000806000806080858703121561190957600080fd5b8435611914816118a3565b935060208501359250604085013561192b816118a3565b9396929550929360600135925050565b60006020828403121561194d57600080fd5b81356116e3816118a3565b60006020828403121561196a57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156119af576119af611971565b604052919050565b60006001600160401b038211156119d0576119d0611971565b5060051b60200190565b600082601f8301126119eb57600080fd5b81356020611a006119fb836119b7565b611987565b82815260059290921b84018101918181019086841115611a1f57600080fd5b8286015b84811015611a43578035611a36816118a3565b8352918301918301611a23565b509695505050505050565b600082601f830112611a5f57600080fd5b81356020611a6f6119fb836119b7565b82815260059290921b84018101918181019086841115611a8e57600080fd5b8286015b84811015611a435780358352918301918301611a92565b600080600080600060a08688031215611ac157600080fd5b8535945060208601356001600160401b0380821115611adf57600080fd5b611aeb89838a016119da565b95506040880135915080821115611b0157600080fd5b611b0d89838a01611a4e565b94506060880135915080821115611b2357600080fd5b611b2f89838a016119da565b93506080880135915080821115611b4557600080fd5b50611b5288828901611a4e565b9150509295509295909350565b60008060408385031215611b7257600080fd5b50508035926020909101359150565b6000815180845260005b81811015611ba757602081850181015186830182015201611b8b565b506000602082860101526020601f19601f83011685010191505092915050565b8415158152836020820152608060408201526000611be86080830185611b81565b905060018060a01b038316606083015295945050505050565b600080600060608486031215611c1657600080fd5b8335925060208401356001600160401b0380821115611c3457600080fd5b611c40878388016119da565b93506040860135915080821115611c5657600080fd5b50611c6386828701611a4e565b9150509250925092565b60008060408385031215611c8057600080fd5b8235611c8b816118a3565b946020939093013593505050565b6020815260006116e36020830184611b81565b600060208284031215611cbe57600080fd5b5051919050565b600060208284031215611cd757600080fd5b81516116e3816118a3565b6001600160a01b0393841681529190921660208201526001600160e01b0319909116604082015260600190565b80518015158114611d1f57600080fd5b919050565b600060208284031215611d3657600080fd5b6116e382611d0f565b6020808252601a908201527913db9b1e4810dbdc994810591b5a5b9050d308185b1b1bddd95960321b604082015260600190565b6020808252600b908201526a13db9b1e48105c9d1a5cdd60aa1b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611dd657611dd6611dae565b5060010190565b604080825283519082018190526000906020906060840190828701845b82811015611e1f5781516001600160a01b031684529284019290840190600101611dfa565b5050508381038285015284518082528583019183019060005b81811015611e5457835183529284019291840191600101611e38565b5090979650505050505050565b600082611e7e57634e487b7160e01b600052601260045260246000fd5b500490565b60008060008060008060c08789031215611e9c57600080fd5b8651955060208701519450611eb360408801611d0f565b9350611ec160608801611d0f565b925060808701519150611ed660a08801611d0f565b90509295509295509295565b8181038181111561127857611278611dae565b60008060008060008060c08789031215611f0e57600080fd5b865195506020870151611f20816118a3565b604088015160608901519196509450611f38816118a3565b608088015160a08901519194509250611f50816118a3565b809150509295509295509295565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220e528303f98c319dcbd3c67a1a0ef40af60a26df3e17ef791afac994852b3091164736f6c63430008110033",
717
+ "linkReferences": {},
718
+ "deployedLinkReferences": {}
719
+ }