@zoralabs/comments-contracts 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/.env.example +11 -0
  2. package/.turbo/turbo-build.log +60 -0
  3. package/LICENSE +21 -0
  4. package/README.md +70 -0
  5. package/_imagine/Enjoy.sol +41 -0
  6. package/abis/AccessControlUpgradeable.json +250 -0
  7. package/abis/Address.json +29 -0
  8. package/abis/Comments.json +62 -0
  9. package/abis/CommentsDeployerBase.json +15 -0
  10. package/abis/CommentsImpl.json +1750 -0
  11. package/abis/CommentsPermitTest.json +847 -0
  12. package/abis/CommentsTest.json +986 -0
  13. package/abis/CommentsTestBase.json +577 -0
  14. package/abis/Comments_mintAndCommentTest.json +690 -0
  15. package/abis/ContextUpgradeable.json +25 -0
  16. package/abis/ContractVersionBase.json +15 -0
  17. package/abis/Create2.json +28 -0
  18. package/abis/DeployImpl.json +22 -0
  19. package/abis/DeployNonDeterministic.json +22 -0
  20. package/abis/DeployScript.json +22 -0
  21. package/abis/DeterministicDeployerAndCaller.json +315 -0
  22. package/abis/DeterministicUUPSProxyDeployer.json +167 -0
  23. package/abis/ECDSA.json +29 -0
  24. package/abis/EIP712.json +67 -0
  25. package/abis/EIP712UpgradeableWithChainId.json +25 -0
  26. package/abis/ERC1155.json +416 -0
  27. package/abis/ERC1155Holder.json +99 -0
  28. package/abis/ERC165.json +21 -0
  29. package/abis/ERC165Upgradeable.json +44 -0
  30. package/abis/ERC1967Proxy.json +67 -0
  31. package/abis/ERC1967Utils.json +85 -0
  32. package/abis/GenerateDeterministicParams.json +22 -0
  33. package/abis/IAccessControl.json +195 -0
  34. package/abis/IBeacon.json +15 -0
  35. package/abis/IComments.json +654 -0
  36. package/abis/IContractMetadata.json +28 -0
  37. package/abis/IERC1155.json +295 -0
  38. package/abis/IERC1155Errors.json +104 -0
  39. package/abis/IERC1155MetadataURI.json +314 -0
  40. package/abis/IERC1155Receiver.json +99 -0
  41. package/abis/IERC1271.json +26 -0
  42. package/abis/IERC165.json +21 -0
  43. package/abis/IERC1822Proxiable.json +15 -0
  44. package/abis/IERC20.json +224 -0
  45. package/abis/IERC20Errors.json +88 -0
  46. package/abis/IERC5267.json +51 -0
  47. package/abis/IERC721.json +287 -0
  48. package/abis/IERC721Enumerable.json +343 -0
  49. package/abis/IERC721Errors.json +105 -0
  50. package/abis/IERC721Metadata.json +332 -0
  51. package/abis/IERC721TokenReceiver.json +36 -0
  52. package/abis/IHasContractName.json +15 -0
  53. package/abis/IImmutableCreate2Factory.json +93 -0
  54. package/abis/IMulticall3.json +440 -0
  55. package/abis/IProtocolRewards.json +342 -0
  56. package/abis/ISafe.json +15 -0
  57. package/abis/ISymbol.json +15 -0
  58. package/abis/IVersionedContract.json +15 -0
  59. package/abis/IZoraCreator1155.json +343 -0
  60. package/abis/ImmutableCreate2FactoryUtils.json +15 -0
  61. package/abis/Initializable.json +25 -0
  62. package/abis/LibString.json +7 -0
  63. package/abis/Math.json +7 -0
  64. package/abis/Mock1155.json +547 -0
  65. package/abis/MockERC20.json +322 -0
  66. package/abis/MockERC721.json +350 -0
  67. package/abis/MockMinter.json +64 -0
  68. package/abis/OwnableUpgradeable.json +99 -0
  69. package/abis/ProtocolRewards.json +494 -0
  70. package/abis/Proxy.json +6 -0
  71. package/abis/ProxyDeployerScript.json +15 -0
  72. package/abis/ProxyShim.json +112 -0
  73. package/abis/Script.json +15 -0
  74. package/abis/ShortStrings.json +18 -0
  75. package/abis/StdAssertions.json +379 -0
  76. package/abis/StdInvariant.json +180 -0
  77. package/abis/Strings.json +18 -0
  78. package/abis/Test.json +570 -0
  79. package/abis/UUPSUpgradeable.json +130 -0
  80. package/abis/UnorderedNoncesUpgradeable.json +42 -0
  81. package/abis/Vm.json +8627 -0
  82. package/abis/VmSafe.json +7297 -0
  83. package/abis/stdError.json +119 -0
  84. package/abis/stdStorageSafe.json +52 -0
  85. package/addresses/999999999.json +4 -0
  86. package/deterministicConfig/comments.json +8 -0
  87. package/dist/index.cjs +935 -0
  88. package/dist/index.cjs.map +1 -0
  89. package/dist/index.d.ts +2 -0
  90. package/dist/index.d.ts.map +1 -0
  91. package/dist/index.js +908 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/types.d.ts +4 -0
  94. package/dist/types.d.ts.map +1 -0
  95. package/dist/wagmiGenerated.d.ts +1354 -0
  96. package/dist/wagmiGenerated.d.ts.map +1 -0
  97. package/foundry.toml +24 -0
  98. package/package/index.ts +4 -0
  99. package/package/types.ts +5 -0
  100. package/package/wagmiGenerated.ts +907 -0
  101. package/package.json +62 -0
  102. package/remappings.txt +8 -0
  103. package/script/CommentsDeployerBase.sol +60 -0
  104. package/script/Deploy.s.sol +66 -0
  105. package/script/DeployImpl.s.sol +26 -0
  106. package/script/DeployNonDeterministic.s.sol +43 -0
  107. package/script/GenerateDeterministicParams.s.sol +55 -0
  108. package/script/bundle-abis.ts +109 -0
  109. package/script/storage-check.sh +57 -0
  110. package/script/update-contract-version.ts +63 -0
  111. package/scripts/abis.ts +3 -0
  112. package/scripts/backfillComments.ts +176 -0
  113. package/scripts/generateCommentsTestData.ts +247 -0
  114. package/scripts/getCommentsAddresses.ts +10 -0
  115. package/scripts/queries.ts +73 -0
  116. package/scripts/queryAndSaveComments.ts +48 -0
  117. package/scripts/queryQuantityOfComments.ts +53 -0
  118. package/scripts/signDeployAndCall.ts +51 -0
  119. package/scripts/turnkey.ts +36 -0
  120. package/scripts/utils.ts +127 -0
  121. package/scripts/writeComments.ts +198 -0
  122. package/slither.config.json +7 -0
  123. package/src/CommentsImpl.sol +552 -0
  124. package/src/deployments/CommentsDeployment.sol +14 -0
  125. package/src/interfaces/IComments.sol +156 -0
  126. package/src/interfaces/IZoraCreator1155.sol +12 -0
  127. package/src/proxy/Comments.sol +43 -0
  128. package/src/utils/EIP712UpgradeableWithChainId.sol +36 -0
  129. package/src/version/ContractVersionBase.sol +14 -0
  130. package/test/Comments.t.sol +482 -0
  131. package/test/CommentsTestBase.sol +86 -0
  132. package/test/Comments_mintAndComment.t.sol +101 -0
  133. package/test/Comments_permit.t.sol +397 -0
  134. package/test/mocks/Mock1155.sol +50 -0
  135. package/test/mocks/MockMinter.sol +29 -0
  136. package/test/mocks/ProtocolRewards.sol +1497 -0
  137. package/tsconfig.build.json +10 -0
  138. package/tsconfig.json +9 -0
  139. package/tsup.config.ts +11 -0
  140. package/wagmi.config.ts +14 -0
@@ -0,0 +1,986 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "IS_TEST",
5
+ "inputs": [],
6
+ "outputs": [
7
+ {
8
+ "name": "",
9
+ "type": "bool",
10
+ "internalType": "bool"
11
+ }
12
+ ],
13
+ "stateMutability": "view"
14
+ },
15
+ {
16
+ "type": "function",
17
+ "name": "REFERRER_REWARD_PCT",
18
+ "inputs": [],
19
+ "outputs": [
20
+ {
21
+ "name": "",
22
+ "type": "uint256",
23
+ "internalType": "uint256"
24
+ }
25
+ ],
26
+ "stateMutability": "view"
27
+ },
28
+ {
29
+ "type": "function",
30
+ "name": "ZORA_REWARD_PCT",
31
+ "inputs": [],
32
+ "outputs": [
33
+ {
34
+ "name": "",
35
+ "type": "uint256",
36
+ "internalType": "uint256"
37
+ }
38
+ ],
39
+ "stateMutability": "view"
40
+ },
41
+ {
42
+ "type": "function",
43
+ "name": "excludeArtifacts",
44
+ "inputs": [],
45
+ "outputs": [
46
+ {
47
+ "name": "excludedArtifacts_",
48
+ "type": "string[]",
49
+ "internalType": "string[]"
50
+ }
51
+ ],
52
+ "stateMutability": "view"
53
+ },
54
+ {
55
+ "type": "function",
56
+ "name": "excludeContracts",
57
+ "inputs": [],
58
+ "outputs": [
59
+ {
60
+ "name": "excludedContracts_",
61
+ "type": "address[]",
62
+ "internalType": "address[]"
63
+ }
64
+ ],
65
+ "stateMutability": "view"
66
+ },
67
+ {
68
+ "type": "function",
69
+ "name": "excludeSelectors",
70
+ "inputs": [],
71
+ "outputs": [
72
+ {
73
+ "name": "excludedSelectors_",
74
+ "type": "tuple[]",
75
+ "internalType": "struct StdInvariant.FuzzSelector[]",
76
+ "components": [
77
+ {
78
+ "name": "addr",
79
+ "type": "address",
80
+ "internalType": "address"
81
+ },
82
+ {
83
+ "name": "selectors",
84
+ "type": "bytes4[]",
85
+ "internalType": "bytes4[]"
86
+ }
87
+ ]
88
+ }
89
+ ],
90
+ "stateMutability": "view"
91
+ },
92
+ {
93
+ "type": "function",
94
+ "name": "excludeSenders",
95
+ "inputs": [],
96
+ "outputs": [
97
+ {
98
+ "name": "excludedSenders_",
99
+ "type": "address[]",
100
+ "internalType": "address[]"
101
+ }
102
+ ],
103
+ "stateMutability": "view"
104
+ },
105
+ {
106
+ "type": "function",
107
+ "name": "failed",
108
+ "inputs": [],
109
+ "outputs": [
110
+ {
111
+ "name": "",
112
+ "type": "bool",
113
+ "internalType": "bool"
114
+ }
115
+ ],
116
+ "stateMutability": "view"
117
+ },
118
+ {
119
+ "type": "function",
120
+ "name": "setUp",
121
+ "inputs": [],
122
+ "outputs": [],
123
+ "stateMutability": "nonpayable"
124
+ },
125
+ {
126
+ "type": "function",
127
+ "name": "targetArtifactSelectors",
128
+ "inputs": [],
129
+ "outputs": [
130
+ {
131
+ "name": "targetedArtifactSelectors_",
132
+ "type": "tuple[]",
133
+ "internalType": "struct StdInvariant.FuzzArtifactSelector[]",
134
+ "components": [
135
+ {
136
+ "name": "artifact",
137
+ "type": "string",
138
+ "internalType": "string"
139
+ },
140
+ {
141
+ "name": "selectors",
142
+ "type": "bytes4[]",
143
+ "internalType": "bytes4[]"
144
+ }
145
+ ]
146
+ }
147
+ ],
148
+ "stateMutability": "view"
149
+ },
150
+ {
151
+ "type": "function",
152
+ "name": "targetArtifacts",
153
+ "inputs": [],
154
+ "outputs": [
155
+ {
156
+ "name": "targetedArtifacts_",
157
+ "type": "string[]",
158
+ "internalType": "string[]"
159
+ }
160
+ ],
161
+ "stateMutability": "view"
162
+ },
163
+ {
164
+ "type": "function",
165
+ "name": "targetContracts",
166
+ "inputs": [],
167
+ "outputs": [
168
+ {
169
+ "name": "targetedContracts_",
170
+ "type": "address[]",
171
+ "internalType": "address[]"
172
+ }
173
+ ],
174
+ "stateMutability": "view"
175
+ },
176
+ {
177
+ "type": "function",
178
+ "name": "targetInterfaces",
179
+ "inputs": [],
180
+ "outputs": [
181
+ {
182
+ "name": "targetedInterfaces_",
183
+ "type": "tuple[]",
184
+ "internalType": "struct StdInvariant.FuzzInterface[]",
185
+ "components": [
186
+ {
187
+ "name": "addr",
188
+ "type": "address",
189
+ "internalType": "address"
190
+ },
191
+ {
192
+ "name": "artifacts",
193
+ "type": "string[]",
194
+ "internalType": "string[]"
195
+ }
196
+ ]
197
+ }
198
+ ],
199
+ "stateMutability": "view"
200
+ },
201
+ {
202
+ "type": "function",
203
+ "name": "targetSelectors",
204
+ "inputs": [],
205
+ "outputs": [
206
+ {
207
+ "name": "targetedSelectors_",
208
+ "type": "tuple[]",
209
+ "internalType": "struct StdInvariant.FuzzSelector[]",
210
+ "components": [
211
+ {
212
+ "name": "addr",
213
+ "type": "address",
214
+ "internalType": "address"
215
+ },
216
+ {
217
+ "name": "selectors",
218
+ "type": "bytes4[]",
219
+ "internalType": "bytes4[]"
220
+ }
221
+ ]
222
+ }
223
+ ],
224
+ "stateMutability": "view"
225
+ },
226
+ {
227
+ "type": "function",
228
+ "name": "targetSenders",
229
+ "inputs": [],
230
+ "outputs": [
231
+ {
232
+ "name": "targetedSenders_",
233
+ "type": "address[]",
234
+ "internalType": "address[]"
235
+ }
236
+ ],
237
+ "stateMutability": "view"
238
+ },
239
+ {
240
+ "type": "function",
241
+ "name": "testCommentBackfillBatchAddCommentShouldEmitCommented",
242
+ "inputs": [],
243
+ "outputs": [],
244
+ "stateMutability": "nonpayable"
245
+ },
246
+ {
247
+ "type": "function",
248
+ "name": "testCommentBackfillBatchAddCommentShouldRevertIfArrayLengthMismatch",
249
+ "inputs": [],
250
+ "outputs": [],
251
+ "stateMutability": "nonpayable"
252
+ },
253
+ {
254
+ "type": "function",
255
+ "name": "testCommentBackfillBatchAddCommentShouldRevertIfDuplicate",
256
+ "inputs": [],
257
+ "outputs": [],
258
+ "stateMutability": "nonpayable"
259
+ },
260
+ {
261
+ "type": "function",
262
+ "name": "testCommentContractName",
263
+ "inputs": [],
264
+ "outputs": [],
265
+ "stateMutability": "view"
266
+ },
267
+ {
268
+ "type": "function",
269
+ "name": "testCommentHashAndValidateCommentExists",
270
+ "inputs": [],
271
+ "outputs": [],
272
+ "stateMutability": "nonpayable"
273
+ },
274
+ {
275
+ "type": "function",
276
+ "name": "testCommentMismatchedCommenter",
277
+ "inputs": [],
278
+ "outputs": [],
279
+ "stateMutability": "nonpayable"
280
+ },
281
+ {
282
+ "type": "function",
283
+ "name": "testCommentRevertsWhenSendExactValue",
284
+ "inputs": [],
285
+ "outputs": [],
286
+ "stateMutability": "nonpayable"
287
+ },
288
+ {
289
+ "type": "function",
290
+ "name": "testCommentRevertsWhenSendTooLittleValue",
291
+ "inputs": [],
292
+ "outputs": [],
293
+ "stateMutability": "nonpayable"
294
+ },
295
+ {
296
+ "type": "function",
297
+ "name": "testCommentRevertsWhenSendTooMuchValue",
298
+ "inputs": [],
299
+ "outputs": [],
300
+ "stateMutability": "nonpayable"
301
+ },
302
+ {
303
+ "type": "function",
304
+ "name": "testCommentSparkCommentDoesNotExist",
305
+ "inputs": [],
306
+ "outputs": [],
307
+ "stateMutability": "nonpayable"
308
+ },
309
+ {
310
+ "type": "function",
311
+ "name": "testCommentSparkCommentOwnComment",
312
+ "inputs": [],
313
+ "outputs": [],
314
+ "stateMutability": "nonpayable"
315
+ },
316
+ {
317
+ "type": "function",
318
+ "name": "testCommentSparkCommentValid",
319
+ "inputs": [
320
+ {
321
+ "name": "sparksQuantity",
322
+ "type": "uint64",
323
+ "internalType": "uint64"
324
+ }
325
+ ],
326
+ "outputs": [],
327
+ "stateMutability": "nonpayable"
328
+ },
329
+ {
330
+ "type": "function",
331
+ "name": "testCommentSparkCommentValidWithReferrer",
332
+ "inputs": [
333
+ {
334
+ "name": "sparksQuantity",
335
+ "type": "uint64",
336
+ "internalType": "uint64"
337
+ }
338
+ ],
339
+ "outputs": [],
340
+ "stateMutability": "nonpayable"
341
+ },
342
+ {
343
+ "type": "function",
344
+ "name": "testCommentSparkCommentWithInvalidAmount",
345
+ "inputs": [],
346
+ "outputs": [],
347
+ "stateMutability": "nonpayable"
348
+ },
349
+ {
350
+ "type": "function",
351
+ "name": "testCommentSparkCommentWithZeroSparks",
352
+ "inputs": [],
353
+ "outputs": [],
354
+ "stateMutability": "nonpayable"
355
+ },
356
+ {
357
+ "type": "function",
358
+ "name": "testCommentWhenCollectorHasTokenShouldEmitCommented",
359
+ "inputs": [],
360
+ "outputs": [],
361
+ "stateMutability": "nonpayable"
362
+ },
363
+ {
364
+ "type": "function",
365
+ "name": "testHashAndCheckCommentExists",
366
+ "inputs": [],
367
+ "outputs": [],
368
+ "stateMutability": "nonpayable"
369
+ },
370
+ {
371
+ "type": "function",
372
+ "name": "testReplyToCommentThatAddressDoesNotMatch",
373
+ "inputs": [],
374
+ "outputs": [],
375
+ "stateMutability": "nonpayable"
376
+ },
377
+ {
378
+ "type": "function",
379
+ "name": "testReplyToExistingComment",
380
+ "inputs": [],
381
+ "outputs": [],
382
+ "stateMutability": "nonpayable"
383
+ },
384
+ {
385
+ "type": "function",
386
+ "name": "testReplyToNonExistentComment",
387
+ "inputs": [],
388
+ "outputs": [],
389
+ "stateMutability": "nonpayable"
390
+ },
391
+ {
392
+ "type": "function",
393
+ "name": "testRevertOnEmptyComment",
394
+ "inputs": [],
395
+ "outputs": [],
396
+ "stateMutability": "nonpayable"
397
+ },
398
+ {
399
+ "type": "function",
400
+ "name": "testRevertOnNotTokenHolderOrAdmin",
401
+ "inputs": [],
402
+ "outputs": [],
403
+ "stateMutability": "nonpayable"
404
+ },
405
+ {
406
+ "type": "event",
407
+ "name": "BackfilledComment",
408
+ "inputs": [
409
+ {
410
+ "name": "commentId",
411
+ "type": "bytes32",
412
+ "indexed": true,
413
+ "internalType": "bytes32"
414
+ },
415
+ {
416
+ "name": "comment",
417
+ "type": "tuple",
418
+ "indexed": false,
419
+ "internalType": "struct IComments.CommentIdentifier",
420
+ "components": [
421
+ {
422
+ "name": "commenter",
423
+ "type": "address",
424
+ "internalType": "address"
425
+ },
426
+ {
427
+ "name": "contractAddress",
428
+ "type": "address",
429
+ "internalType": "address"
430
+ },
431
+ {
432
+ "name": "tokenId",
433
+ "type": "uint256",
434
+ "internalType": "uint256"
435
+ },
436
+ {
437
+ "name": "nonce",
438
+ "type": "bytes32",
439
+ "internalType": "bytes32"
440
+ }
441
+ ]
442
+ },
443
+ {
444
+ "name": "text",
445
+ "type": "string",
446
+ "indexed": false,
447
+ "internalType": "string"
448
+ },
449
+ {
450
+ "name": "timestamp",
451
+ "type": "uint256",
452
+ "indexed": false,
453
+ "internalType": "uint256"
454
+ },
455
+ {
456
+ "name": "originalTransactionId",
457
+ "type": "bytes32",
458
+ "indexed": false,
459
+ "internalType": "bytes32"
460
+ }
461
+ ],
462
+ "anonymous": false
463
+ },
464
+ {
465
+ "type": "event",
466
+ "name": "Commented",
467
+ "inputs": [
468
+ {
469
+ "name": "commentId",
470
+ "type": "bytes32",
471
+ "indexed": true,
472
+ "internalType": "bytes32"
473
+ },
474
+ {
475
+ "name": "comment",
476
+ "type": "tuple",
477
+ "indexed": false,
478
+ "internalType": "struct IComments.CommentIdentifier",
479
+ "components": [
480
+ {
481
+ "name": "commenter",
482
+ "type": "address",
483
+ "internalType": "address"
484
+ },
485
+ {
486
+ "name": "contractAddress",
487
+ "type": "address",
488
+ "internalType": "address"
489
+ },
490
+ {
491
+ "name": "tokenId",
492
+ "type": "uint256",
493
+ "internalType": "uint256"
494
+ },
495
+ {
496
+ "name": "nonce",
497
+ "type": "bytes32",
498
+ "internalType": "bytes32"
499
+ }
500
+ ]
501
+ },
502
+ {
503
+ "name": "replyToId",
504
+ "type": "bytes32",
505
+ "indexed": false,
506
+ "internalType": "bytes32"
507
+ },
508
+ {
509
+ "name": "replyTo",
510
+ "type": "tuple",
511
+ "indexed": false,
512
+ "internalType": "struct IComments.CommentIdentifier",
513
+ "components": [
514
+ {
515
+ "name": "commenter",
516
+ "type": "address",
517
+ "internalType": "address"
518
+ },
519
+ {
520
+ "name": "contractAddress",
521
+ "type": "address",
522
+ "internalType": "address"
523
+ },
524
+ {
525
+ "name": "tokenId",
526
+ "type": "uint256",
527
+ "internalType": "uint256"
528
+ },
529
+ {
530
+ "name": "nonce",
531
+ "type": "bytes32",
532
+ "internalType": "bytes32"
533
+ }
534
+ ]
535
+ },
536
+ {
537
+ "name": "sparksQuantity",
538
+ "type": "uint64",
539
+ "indexed": false,
540
+ "internalType": "uint64"
541
+ },
542
+ {
543
+ "name": "text",
544
+ "type": "string",
545
+ "indexed": false,
546
+ "internalType": "string"
547
+ },
548
+ {
549
+ "name": "timestamp",
550
+ "type": "uint256",
551
+ "indexed": false,
552
+ "internalType": "uint256"
553
+ },
554
+ {
555
+ "name": "referrer",
556
+ "type": "address",
557
+ "indexed": false,
558
+ "internalType": "address"
559
+ }
560
+ ],
561
+ "anonymous": false
562
+ },
563
+ {
564
+ "type": "event",
565
+ "name": "SparkedComment",
566
+ "inputs": [
567
+ {
568
+ "name": "commentId",
569
+ "type": "bytes32",
570
+ "indexed": true,
571
+ "internalType": "bytes32"
572
+ },
573
+ {
574
+ "name": "commentIdentifier",
575
+ "type": "tuple",
576
+ "indexed": false,
577
+ "internalType": "struct IComments.CommentIdentifier",
578
+ "components": [
579
+ {
580
+ "name": "commenter",
581
+ "type": "address",
582
+ "internalType": "address"
583
+ },
584
+ {
585
+ "name": "contractAddress",
586
+ "type": "address",
587
+ "internalType": "address"
588
+ },
589
+ {
590
+ "name": "tokenId",
591
+ "type": "uint256",
592
+ "internalType": "uint256"
593
+ },
594
+ {
595
+ "name": "nonce",
596
+ "type": "bytes32",
597
+ "internalType": "bytes32"
598
+ }
599
+ ]
600
+ },
601
+ {
602
+ "name": "sparksQuantity",
603
+ "type": "uint64",
604
+ "indexed": false,
605
+ "internalType": "uint64"
606
+ },
607
+ {
608
+ "name": "sparker",
609
+ "type": "address",
610
+ "indexed": false,
611
+ "internalType": "address"
612
+ },
613
+ {
614
+ "name": "timestamp",
615
+ "type": "uint256",
616
+ "indexed": false,
617
+ "internalType": "uint256"
618
+ }
619
+ ],
620
+ "anonymous": false
621
+ },
622
+ {
623
+ "type": "event",
624
+ "name": "log",
625
+ "inputs": [
626
+ {
627
+ "name": "",
628
+ "type": "string",
629
+ "indexed": false,
630
+ "internalType": "string"
631
+ }
632
+ ],
633
+ "anonymous": false
634
+ },
635
+ {
636
+ "type": "event",
637
+ "name": "log_address",
638
+ "inputs": [
639
+ {
640
+ "name": "",
641
+ "type": "address",
642
+ "indexed": false,
643
+ "internalType": "address"
644
+ }
645
+ ],
646
+ "anonymous": false
647
+ },
648
+ {
649
+ "type": "event",
650
+ "name": "log_array",
651
+ "inputs": [
652
+ {
653
+ "name": "val",
654
+ "type": "uint256[]",
655
+ "indexed": false,
656
+ "internalType": "uint256[]"
657
+ }
658
+ ],
659
+ "anonymous": false
660
+ },
661
+ {
662
+ "type": "event",
663
+ "name": "log_array",
664
+ "inputs": [
665
+ {
666
+ "name": "val",
667
+ "type": "int256[]",
668
+ "indexed": false,
669
+ "internalType": "int256[]"
670
+ }
671
+ ],
672
+ "anonymous": false
673
+ },
674
+ {
675
+ "type": "event",
676
+ "name": "log_array",
677
+ "inputs": [
678
+ {
679
+ "name": "val",
680
+ "type": "address[]",
681
+ "indexed": false,
682
+ "internalType": "address[]"
683
+ }
684
+ ],
685
+ "anonymous": false
686
+ },
687
+ {
688
+ "type": "event",
689
+ "name": "log_bytes",
690
+ "inputs": [
691
+ {
692
+ "name": "",
693
+ "type": "bytes",
694
+ "indexed": false,
695
+ "internalType": "bytes"
696
+ }
697
+ ],
698
+ "anonymous": false
699
+ },
700
+ {
701
+ "type": "event",
702
+ "name": "log_bytes32",
703
+ "inputs": [
704
+ {
705
+ "name": "",
706
+ "type": "bytes32",
707
+ "indexed": false,
708
+ "internalType": "bytes32"
709
+ }
710
+ ],
711
+ "anonymous": false
712
+ },
713
+ {
714
+ "type": "event",
715
+ "name": "log_int",
716
+ "inputs": [
717
+ {
718
+ "name": "",
719
+ "type": "int256",
720
+ "indexed": false,
721
+ "internalType": "int256"
722
+ }
723
+ ],
724
+ "anonymous": false
725
+ },
726
+ {
727
+ "type": "event",
728
+ "name": "log_named_address",
729
+ "inputs": [
730
+ {
731
+ "name": "key",
732
+ "type": "string",
733
+ "indexed": false,
734
+ "internalType": "string"
735
+ },
736
+ {
737
+ "name": "val",
738
+ "type": "address",
739
+ "indexed": false,
740
+ "internalType": "address"
741
+ }
742
+ ],
743
+ "anonymous": false
744
+ },
745
+ {
746
+ "type": "event",
747
+ "name": "log_named_array",
748
+ "inputs": [
749
+ {
750
+ "name": "key",
751
+ "type": "string",
752
+ "indexed": false,
753
+ "internalType": "string"
754
+ },
755
+ {
756
+ "name": "val",
757
+ "type": "uint256[]",
758
+ "indexed": false,
759
+ "internalType": "uint256[]"
760
+ }
761
+ ],
762
+ "anonymous": false
763
+ },
764
+ {
765
+ "type": "event",
766
+ "name": "log_named_array",
767
+ "inputs": [
768
+ {
769
+ "name": "key",
770
+ "type": "string",
771
+ "indexed": false,
772
+ "internalType": "string"
773
+ },
774
+ {
775
+ "name": "val",
776
+ "type": "int256[]",
777
+ "indexed": false,
778
+ "internalType": "int256[]"
779
+ }
780
+ ],
781
+ "anonymous": false
782
+ },
783
+ {
784
+ "type": "event",
785
+ "name": "log_named_array",
786
+ "inputs": [
787
+ {
788
+ "name": "key",
789
+ "type": "string",
790
+ "indexed": false,
791
+ "internalType": "string"
792
+ },
793
+ {
794
+ "name": "val",
795
+ "type": "address[]",
796
+ "indexed": false,
797
+ "internalType": "address[]"
798
+ }
799
+ ],
800
+ "anonymous": false
801
+ },
802
+ {
803
+ "type": "event",
804
+ "name": "log_named_bytes",
805
+ "inputs": [
806
+ {
807
+ "name": "key",
808
+ "type": "string",
809
+ "indexed": false,
810
+ "internalType": "string"
811
+ },
812
+ {
813
+ "name": "val",
814
+ "type": "bytes",
815
+ "indexed": false,
816
+ "internalType": "bytes"
817
+ }
818
+ ],
819
+ "anonymous": false
820
+ },
821
+ {
822
+ "type": "event",
823
+ "name": "log_named_bytes32",
824
+ "inputs": [
825
+ {
826
+ "name": "key",
827
+ "type": "string",
828
+ "indexed": false,
829
+ "internalType": "string"
830
+ },
831
+ {
832
+ "name": "val",
833
+ "type": "bytes32",
834
+ "indexed": false,
835
+ "internalType": "bytes32"
836
+ }
837
+ ],
838
+ "anonymous": false
839
+ },
840
+ {
841
+ "type": "event",
842
+ "name": "log_named_decimal_int",
843
+ "inputs": [
844
+ {
845
+ "name": "key",
846
+ "type": "string",
847
+ "indexed": false,
848
+ "internalType": "string"
849
+ },
850
+ {
851
+ "name": "val",
852
+ "type": "int256",
853
+ "indexed": false,
854
+ "internalType": "int256"
855
+ },
856
+ {
857
+ "name": "decimals",
858
+ "type": "uint256",
859
+ "indexed": false,
860
+ "internalType": "uint256"
861
+ }
862
+ ],
863
+ "anonymous": false
864
+ },
865
+ {
866
+ "type": "event",
867
+ "name": "log_named_decimal_uint",
868
+ "inputs": [
869
+ {
870
+ "name": "key",
871
+ "type": "string",
872
+ "indexed": false,
873
+ "internalType": "string"
874
+ },
875
+ {
876
+ "name": "val",
877
+ "type": "uint256",
878
+ "indexed": false,
879
+ "internalType": "uint256"
880
+ },
881
+ {
882
+ "name": "decimals",
883
+ "type": "uint256",
884
+ "indexed": false,
885
+ "internalType": "uint256"
886
+ }
887
+ ],
888
+ "anonymous": false
889
+ },
890
+ {
891
+ "type": "event",
892
+ "name": "log_named_int",
893
+ "inputs": [
894
+ {
895
+ "name": "key",
896
+ "type": "string",
897
+ "indexed": false,
898
+ "internalType": "string"
899
+ },
900
+ {
901
+ "name": "val",
902
+ "type": "int256",
903
+ "indexed": false,
904
+ "internalType": "int256"
905
+ }
906
+ ],
907
+ "anonymous": false
908
+ },
909
+ {
910
+ "type": "event",
911
+ "name": "log_named_string",
912
+ "inputs": [
913
+ {
914
+ "name": "key",
915
+ "type": "string",
916
+ "indexed": false,
917
+ "internalType": "string"
918
+ },
919
+ {
920
+ "name": "val",
921
+ "type": "string",
922
+ "indexed": false,
923
+ "internalType": "string"
924
+ }
925
+ ],
926
+ "anonymous": false
927
+ },
928
+ {
929
+ "type": "event",
930
+ "name": "log_named_uint",
931
+ "inputs": [
932
+ {
933
+ "name": "key",
934
+ "type": "string",
935
+ "indexed": false,
936
+ "internalType": "string"
937
+ },
938
+ {
939
+ "name": "val",
940
+ "type": "uint256",
941
+ "indexed": false,
942
+ "internalType": "uint256"
943
+ }
944
+ ],
945
+ "anonymous": false
946
+ },
947
+ {
948
+ "type": "event",
949
+ "name": "log_string",
950
+ "inputs": [
951
+ {
952
+ "name": "",
953
+ "type": "string",
954
+ "indexed": false,
955
+ "internalType": "string"
956
+ }
957
+ ],
958
+ "anonymous": false
959
+ },
960
+ {
961
+ "type": "event",
962
+ "name": "log_uint",
963
+ "inputs": [
964
+ {
965
+ "name": "",
966
+ "type": "uint256",
967
+ "indexed": false,
968
+ "internalType": "uint256"
969
+ }
970
+ ],
971
+ "anonymous": false
972
+ },
973
+ {
974
+ "type": "event",
975
+ "name": "logs",
976
+ "inputs": [
977
+ {
978
+ "name": "",
979
+ "type": "bytes",
980
+ "indexed": false,
981
+ "internalType": "bytes"
982
+ }
983
+ ],
984
+ "anonymous": false
985
+ }
986
+ ]