@bananapus/omnichain-deployers-v6 1.0.0 → 1.1.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.
- package/deployments/arbitrum/JBOmnichainDeployer.json +3506 -0
- package/deployments/arbitrum_sepolia/JBOmnichainDeployer.json +3506 -0
- package/deployments/base/JBOmnichainDeployer.json +3511 -0
- package/deployments/base_sepolia/JBOmnichainDeployer.json +3511 -0
- package/deployments/ethereum/JBOmnichainDeployer.json +3503 -0
- package/deployments/optimism/JBOmnichainDeployer.json +3511 -0
- package/deployments/optimism_sepolia/JBOmnichainDeployer.json +3511 -0
- package/deployments/sepolia/JBOmnichainDeployer.json +3503 -0
- package/package.json +3 -2
- package/src/JBOmnichainDeployer.sol +19 -1
|
@@ -0,0 +1,3506 @@
|
|
|
1
|
+
{
|
|
2
|
+
"format": "sphinx-sol-ct-artifact-1",
|
|
3
|
+
"address": "0xb853758a70a6b4216c09f1d071ea2344aba0a34f",
|
|
4
|
+
"sourceName": "node_modules/@bananapus/omnichain-deployers-v6/src/JBOmnichainDeployer.sol",
|
|
5
|
+
"contractName": "JBOmnichainDeployer",
|
|
6
|
+
"chainId": "0xa4b1",
|
|
7
|
+
"abi": [
|
|
8
|
+
{
|
|
9
|
+
"type": "constructor",
|
|
10
|
+
"inputs": [
|
|
11
|
+
{
|
|
12
|
+
"name": "suckerRegistry",
|
|
13
|
+
"type": "address",
|
|
14
|
+
"internalType": "contract IJBSuckerRegistry"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"name": "hookDeployer",
|
|
18
|
+
"type": "address",
|
|
19
|
+
"internalType": "contract IJB721TiersHookDeployer"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "permissions",
|
|
23
|
+
"type": "address",
|
|
24
|
+
"internalType": "contract IJBPermissions"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "controller",
|
|
28
|
+
"type": "address",
|
|
29
|
+
"internalType": "contract IJBController"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"name": "trustedForwarder",
|
|
33
|
+
"type": "address",
|
|
34
|
+
"internalType": "address"
|
|
35
|
+
}
|
|
36
|
+
],
|
|
37
|
+
"stateMutability": "nonpayable"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"type": "function",
|
|
41
|
+
"name": "CONTROLLER",
|
|
42
|
+
"inputs": [],
|
|
43
|
+
"outputs": [
|
|
44
|
+
{
|
|
45
|
+
"name": "",
|
|
46
|
+
"type": "address",
|
|
47
|
+
"internalType": "contract IJBController"
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
"stateMutability": "view"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"type": "function",
|
|
54
|
+
"name": "DIRECTORY",
|
|
55
|
+
"inputs": [],
|
|
56
|
+
"outputs": [
|
|
57
|
+
{
|
|
58
|
+
"name": "",
|
|
59
|
+
"type": "address",
|
|
60
|
+
"internalType": "contract IJBDirectory"
|
|
61
|
+
}
|
|
62
|
+
],
|
|
63
|
+
"stateMutability": "view"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"type": "function",
|
|
67
|
+
"name": "HOOK_DEPLOYER",
|
|
68
|
+
"inputs": [],
|
|
69
|
+
"outputs": [
|
|
70
|
+
{
|
|
71
|
+
"name": "",
|
|
72
|
+
"type": "address",
|
|
73
|
+
"internalType": "contract IJB721TiersHookDeployer"
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"stateMutability": "view"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"type": "function",
|
|
80
|
+
"name": "PERMISSIONS",
|
|
81
|
+
"inputs": [],
|
|
82
|
+
"outputs": [
|
|
83
|
+
{
|
|
84
|
+
"name": "",
|
|
85
|
+
"type": "address",
|
|
86
|
+
"internalType": "contract IJBPermissions"
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
"stateMutability": "view"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"type": "function",
|
|
93
|
+
"name": "PROJECTS",
|
|
94
|
+
"inputs": [],
|
|
95
|
+
"outputs": [
|
|
96
|
+
{
|
|
97
|
+
"name": "",
|
|
98
|
+
"type": "address",
|
|
99
|
+
"internalType": "contract IJBProjects"
|
|
100
|
+
}
|
|
101
|
+
],
|
|
102
|
+
"stateMutability": "view"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"type": "function",
|
|
106
|
+
"name": "SUCKER_REGISTRY",
|
|
107
|
+
"inputs": [],
|
|
108
|
+
"outputs": [
|
|
109
|
+
{
|
|
110
|
+
"name": "",
|
|
111
|
+
"type": "address",
|
|
112
|
+
"internalType": "contract IJBSuckerRegistry"
|
|
113
|
+
}
|
|
114
|
+
],
|
|
115
|
+
"stateMutability": "view"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"type": "function",
|
|
119
|
+
"name": "beforeCashOutRecordedWith",
|
|
120
|
+
"inputs": [
|
|
121
|
+
{
|
|
122
|
+
"name": "context",
|
|
123
|
+
"type": "tuple",
|
|
124
|
+
"internalType": "struct JBBeforeCashOutRecordedContext",
|
|
125
|
+
"components": [
|
|
126
|
+
{
|
|
127
|
+
"name": "terminal",
|
|
128
|
+
"type": "address",
|
|
129
|
+
"internalType": "address"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"name": "holder",
|
|
133
|
+
"type": "address",
|
|
134
|
+
"internalType": "address"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"name": "projectId",
|
|
138
|
+
"type": "uint256",
|
|
139
|
+
"internalType": "uint256"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"name": "rulesetId",
|
|
143
|
+
"type": "uint256",
|
|
144
|
+
"internalType": "uint256"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"name": "cashOutCount",
|
|
148
|
+
"type": "uint256",
|
|
149
|
+
"internalType": "uint256"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"name": "totalSupply",
|
|
153
|
+
"type": "uint256",
|
|
154
|
+
"internalType": "uint256"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"name": "surplus",
|
|
158
|
+
"type": "tuple",
|
|
159
|
+
"internalType": "struct JBTokenAmount",
|
|
160
|
+
"components": [
|
|
161
|
+
{
|
|
162
|
+
"name": "token",
|
|
163
|
+
"type": "address",
|
|
164
|
+
"internalType": "address"
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"name": "decimals",
|
|
168
|
+
"type": "uint8",
|
|
169
|
+
"internalType": "uint8"
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"name": "currency",
|
|
173
|
+
"type": "uint32",
|
|
174
|
+
"internalType": "uint32"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"name": "value",
|
|
178
|
+
"type": "uint256",
|
|
179
|
+
"internalType": "uint256"
|
|
180
|
+
}
|
|
181
|
+
]
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"name": "scopeCashOutsToLocalBalances",
|
|
185
|
+
"type": "bool",
|
|
186
|
+
"internalType": "bool"
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"name": "cashOutTaxRate",
|
|
190
|
+
"type": "uint256",
|
|
191
|
+
"internalType": "uint256"
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"name": "beneficiaryIsFeeless",
|
|
195
|
+
"type": "bool",
|
|
196
|
+
"internalType": "bool"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"name": "metadata",
|
|
200
|
+
"type": "bytes",
|
|
201
|
+
"internalType": "bytes"
|
|
202
|
+
}
|
|
203
|
+
]
|
|
204
|
+
}
|
|
205
|
+
],
|
|
206
|
+
"outputs": [
|
|
207
|
+
{
|
|
208
|
+
"name": "cashOutTaxRate",
|
|
209
|
+
"type": "uint256",
|
|
210
|
+
"internalType": "uint256"
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"name": "cashOutCount",
|
|
214
|
+
"type": "uint256",
|
|
215
|
+
"internalType": "uint256"
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
"name": "totalSupply",
|
|
219
|
+
"type": "uint256",
|
|
220
|
+
"internalType": "uint256"
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"name": "effectiveSurplusValue",
|
|
224
|
+
"type": "uint256",
|
|
225
|
+
"internalType": "uint256"
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
"name": "hookSpecifications",
|
|
229
|
+
"type": "tuple[]",
|
|
230
|
+
"internalType": "struct JBCashOutHookSpecification[]",
|
|
231
|
+
"components": [
|
|
232
|
+
{
|
|
233
|
+
"name": "hook",
|
|
234
|
+
"type": "address",
|
|
235
|
+
"internalType": "contract IJBCashOutHook"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"name": "noop",
|
|
239
|
+
"type": "bool",
|
|
240
|
+
"internalType": "bool"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"name": "amount",
|
|
244
|
+
"type": "uint256",
|
|
245
|
+
"internalType": "uint256"
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
"name": "metadata",
|
|
249
|
+
"type": "bytes",
|
|
250
|
+
"internalType": "bytes"
|
|
251
|
+
}
|
|
252
|
+
]
|
|
253
|
+
}
|
|
254
|
+
],
|
|
255
|
+
"stateMutability": "view"
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"type": "function",
|
|
259
|
+
"name": "beforePayRecordedWith",
|
|
260
|
+
"inputs": [
|
|
261
|
+
{
|
|
262
|
+
"name": "context",
|
|
263
|
+
"type": "tuple",
|
|
264
|
+
"internalType": "struct JBBeforePayRecordedContext",
|
|
265
|
+
"components": [
|
|
266
|
+
{
|
|
267
|
+
"name": "terminal",
|
|
268
|
+
"type": "address",
|
|
269
|
+
"internalType": "address"
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
"name": "payer",
|
|
273
|
+
"type": "address",
|
|
274
|
+
"internalType": "address"
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"name": "amount",
|
|
278
|
+
"type": "tuple",
|
|
279
|
+
"internalType": "struct JBTokenAmount",
|
|
280
|
+
"components": [
|
|
281
|
+
{
|
|
282
|
+
"name": "token",
|
|
283
|
+
"type": "address",
|
|
284
|
+
"internalType": "address"
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"name": "decimals",
|
|
288
|
+
"type": "uint8",
|
|
289
|
+
"internalType": "uint8"
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
"name": "currency",
|
|
293
|
+
"type": "uint32",
|
|
294
|
+
"internalType": "uint32"
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"name": "value",
|
|
298
|
+
"type": "uint256",
|
|
299
|
+
"internalType": "uint256"
|
|
300
|
+
}
|
|
301
|
+
]
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
"name": "projectId",
|
|
305
|
+
"type": "uint256",
|
|
306
|
+
"internalType": "uint256"
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
"name": "rulesetId",
|
|
310
|
+
"type": "uint256",
|
|
311
|
+
"internalType": "uint256"
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
"name": "beneficiary",
|
|
315
|
+
"type": "address",
|
|
316
|
+
"internalType": "address"
|
|
317
|
+
},
|
|
318
|
+
{
|
|
319
|
+
"name": "weight",
|
|
320
|
+
"type": "uint256",
|
|
321
|
+
"internalType": "uint256"
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
"name": "reservedPercent",
|
|
325
|
+
"type": "uint256",
|
|
326
|
+
"internalType": "uint256"
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"name": "metadata",
|
|
330
|
+
"type": "bytes",
|
|
331
|
+
"internalType": "bytes"
|
|
332
|
+
}
|
|
333
|
+
]
|
|
334
|
+
}
|
|
335
|
+
],
|
|
336
|
+
"outputs": [
|
|
337
|
+
{
|
|
338
|
+
"name": "weight",
|
|
339
|
+
"type": "uint256",
|
|
340
|
+
"internalType": "uint256"
|
|
341
|
+
},
|
|
342
|
+
{
|
|
343
|
+
"name": "hookSpecifications",
|
|
344
|
+
"type": "tuple[]",
|
|
345
|
+
"internalType": "struct JBPayHookSpecification[]",
|
|
346
|
+
"components": [
|
|
347
|
+
{
|
|
348
|
+
"name": "hook",
|
|
349
|
+
"type": "address",
|
|
350
|
+
"internalType": "contract IJBPayHook"
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
"name": "noop",
|
|
354
|
+
"type": "bool",
|
|
355
|
+
"internalType": "bool"
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
"name": "amount",
|
|
359
|
+
"type": "uint256",
|
|
360
|
+
"internalType": "uint256"
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
"name": "metadata",
|
|
364
|
+
"type": "bytes",
|
|
365
|
+
"internalType": "bytes"
|
|
366
|
+
}
|
|
367
|
+
]
|
|
368
|
+
}
|
|
369
|
+
],
|
|
370
|
+
"stateMutability": "view"
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
"type": "function",
|
|
374
|
+
"name": "deploySuckersFor",
|
|
375
|
+
"inputs": [
|
|
376
|
+
{
|
|
377
|
+
"name": "projectId",
|
|
378
|
+
"type": "uint256",
|
|
379
|
+
"internalType": "uint256"
|
|
380
|
+
},
|
|
381
|
+
{
|
|
382
|
+
"name": "suckerDeploymentConfiguration",
|
|
383
|
+
"type": "tuple",
|
|
384
|
+
"internalType": "struct JBSuckerDeploymentConfig",
|
|
385
|
+
"components": [
|
|
386
|
+
{
|
|
387
|
+
"name": "deployerConfigurations",
|
|
388
|
+
"type": "tuple[]",
|
|
389
|
+
"internalType": "struct JBSuckerDeployerConfig[]",
|
|
390
|
+
"components": [
|
|
391
|
+
{
|
|
392
|
+
"name": "deployer",
|
|
393
|
+
"type": "address",
|
|
394
|
+
"internalType": "contract IJBSuckerDeployer"
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
"name": "peer",
|
|
398
|
+
"type": "bytes32",
|
|
399
|
+
"internalType": "bytes32"
|
|
400
|
+
},
|
|
401
|
+
{
|
|
402
|
+
"name": "mappings",
|
|
403
|
+
"type": "tuple[]",
|
|
404
|
+
"internalType": "struct JBTokenMapping[]",
|
|
405
|
+
"components": [
|
|
406
|
+
{
|
|
407
|
+
"name": "localToken",
|
|
408
|
+
"type": "address",
|
|
409
|
+
"internalType": "address"
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
"name": "minGas",
|
|
413
|
+
"type": "uint32",
|
|
414
|
+
"internalType": "uint32"
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
"name": "remoteToken",
|
|
418
|
+
"type": "bytes32",
|
|
419
|
+
"internalType": "bytes32"
|
|
420
|
+
}
|
|
421
|
+
]
|
|
422
|
+
}
|
|
423
|
+
]
|
|
424
|
+
},
|
|
425
|
+
{
|
|
426
|
+
"name": "salt",
|
|
427
|
+
"type": "bytes32",
|
|
428
|
+
"internalType": "bytes32"
|
|
429
|
+
}
|
|
430
|
+
]
|
|
431
|
+
}
|
|
432
|
+
],
|
|
433
|
+
"outputs": [
|
|
434
|
+
{
|
|
435
|
+
"name": "suckers",
|
|
436
|
+
"type": "address[]",
|
|
437
|
+
"internalType": "address[]"
|
|
438
|
+
}
|
|
439
|
+
],
|
|
440
|
+
"stateMutability": "nonpayable"
|
|
441
|
+
},
|
|
442
|
+
{
|
|
443
|
+
"type": "function",
|
|
444
|
+
"name": "extraDataHookOf",
|
|
445
|
+
"inputs": [
|
|
446
|
+
{
|
|
447
|
+
"name": "projectId",
|
|
448
|
+
"type": "uint256",
|
|
449
|
+
"internalType": "uint256"
|
|
450
|
+
},
|
|
451
|
+
{
|
|
452
|
+
"name": "rulesetId",
|
|
453
|
+
"type": "uint256",
|
|
454
|
+
"internalType": "uint256"
|
|
455
|
+
}
|
|
456
|
+
],
|
|
457
|
+
"outputs": [
|
|
458
|
+
{
|
|
459
|
+
"name": "hook",
|
|
460
|
+
"type": "tuple",
|
|
461
|
+
"internalType": "struct JBDeployerHookConfig",
|
|
462
|
+
"components": [
|
|
463
|
+
{
|
|
464
|
+
"name": "dataHook",
|
|
465
|
+
"type": "address",
|
|
466
|
+
"internalType": "contract IJBRulesetDataHook"
|
|
467
|
+
},
|
|
468
|
+
{
|
|
469
|
+
"name": "useDataHookForPay",
|
|
470
|
+
"type": "bool",
|
|
471
|
+
"internalType": "bool"
|
|
472
|
+
},
|
|
473
|
+
{
|
|
474
|
+
"name": "useDataHookForCashOut",
|
|
475
|
+
"type": "bool",
|
|
476
|
+
"internalType": "bool"
|
|
477
|
+
}
|
|
478
|
+
]
|
|
479
|
+
}
|
|
480
|
+
],
|
|
481
|
+
"stateMutability": "view"
|
|
482
|
+
},
|
|
483
|
+
{
|
|
484
|
+
"type": "function",
|
|
485
|
+
"name": "hasMintPermissionFor",
|
|
486
|
+
"inputs": [
|
|
487
|
+
{
|
|
488
|
+
"name": "projectId",
|
|
489
|
+
"type": "uint256",
|
|
490
|
+
"internalType": "uint256"
|
|
491
|
+
},
|
|
492
|
+
{
|
|
493
|
+
"name": "ruleset",
|
|
494
|
+
"type": "tuple",
|
|
495
|
+
"internalType": "struct JBRuleset",
|
|
496
|
+
"components": [
|
|
497
|
+
{
|
|
498
|
+
"name": "cycleNumber",
|
|
499
|
+
"type": "uint48",
|
|
500
|
+
"internalType": "uint48"
|
|
501
|
+
},
|
|
502
|
+
{
|
|
503
|
+
"name": "id",
|
|
504
|
+
"type": "uint48",
|
|
505
|
+
"internalType": "uint48"
|
|
506
|
+
},
|
|
507
|
+
{
|
|
508
|
+
"name": "basedOnId",
|
|
509
|
+
"type": "uint48",
|
|
510
|
+
"internalType": "uint48"
|
|
511
|
+
},
|
|
512
|
+
{
|
|
513
|
+
"name": "start",
|
|
514
|
+
"type": "uint48",
|
|
515
|
+
"internalType": "uint48"
|
|
516
|
+
},
|
|
517
|
+
{
|
|
518
|
+
"name": "duration",
|
|
519
|
+
"type": "uint32",
|
|
520
|
+
"internalType": "uint32"
|
|
521
|
+
},
|
|
522
|
+
{
|
|
523
|
+
"name": "weight",
|
|
524
|
+
"type": "uint112",
|
|
525
|
+
"internalType": "uint112"
|
|
526
|
+
},
|
|
527
|
+
{
|
|
528
|
+
"name": "weightCutPercent",
|
|
529
|
+
"type": "uint32",
|
|
530
|
+
"internalType": "uint32"
|
|
531
|
+
},
|
|
532
|
+
{
|
|
533
|
+
"name": "approvalHook",
|
|
534
|
+
"type": "address",
|
|
535
|
+
"internalType": "contract IJBRulesetApprovalHook"
|
|
536
|
+
},
|
|
537
|
+
{
|
|
538
|
+
"name": "metadata",
|
|
539
|
+
"type": "uint256",
|
|
540
|
+
"internalType": "uint256"
|
|
541
|
+
}
|
|
542
|
+
]
|
|
543
|
+
},
|
|
544
|
+
{
|
|
545
|
+
"name": "addr",
|
|
546
|
+
"type": "address",
|
|
547
|
+
"internalType": "address"
|
|
548
|
+
}
|
|
549
|
+
],
|
|
550
|
+
"outputs": [
|
|
551
|
+
{
|
|
552
|
+
"name": "",
|
|
553
|
+
"type": "bool",
|
|
554
|
+
"internalType": "bool"
|
|
555
|
+
}
|
|
556
|
+
],
|
|
557
|
+
"stateMutability": "view"
|
|
558
|
+
},
|
|
559
|
+
{
|
|
560
|
+
"type": "function",
|
|
561
|
+
"name": "isTrustedForwarder",
|
|
562
|
+
"inputs": [
|
|
563
|
+
{
|
|
564
|
+
"name": "forwarder",
|
|
565
|
+
"type": "address",
|
|
566
|
+
"internalType": "address"
|
|
567
|
+
}
|
|
568
|
+
],
|
|
569
|
+
"outputs": [
|
|
570
|
+
{
|
|
571
|
+
"name": "",
|
|
572
|
+
"type": "bool",
|
|
573
|
+
"internalType": "bool"
|
|
574
|
+
}
|
|
575
|
+
],
|
|
576
|
+
"stateMutability": "view"
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"type": "function",
|
|
580
|
+
"name": "launchProjectFor",
|
|
581
|
+
"inputs": [
|
|
582
|
+
{
|
|
583
|
+
"name": "owner",
|
|
584
|
+
"type": "address",
|
|
585
|
+
"internalType": "address"
|
|
586
|
+
},
|
|
587
|
+
{
|
|
588
|
+
"name": "projectUri",
|
|
589
|
+
"type": "string",
|
|
590
|
+
"internalType": "string"
|
|
591
|
+
},
|
|
592
|
+
{
|
|
593
|
+
"name": "deploy721Config",
|
|
594
|
+
"type": "tuple",
|
|
595
|
+
"internalType": "struct JBOmnichain721Config",
|
|
596
|
+
"components": [
|
|
597
|
+
{
|
|
598
|
+
"name": "deployTiersHookConfig",
|
|
599
|
+
"type": "tuple",
|
|
600
|
+
"internalType": "struct JBDeploy721TiersHookConfig",
|
|
601
|
+
"components": [
|
|
602
|
+
{
|
|
603
|
+
"name": "name",
|
|
604
|
+
"type": "string",
|
|
605
|
+
"internalType": "string"
|
|
606
|
+
},
|
|
607
|
+
{
|
|
608
|
+
"name": "symbol",
|
|
609
|
+
"type": "string",
|
|
610
|
+
"internalType": "string"
|
|
611
|
+
},
|
|
612
|
+
{
|
|
613
|
+
"name": "baseUri",
|
|
614
|
+
"type": "string",
|
|
615
|
+
"internalType": "string"
|
|
616
|
+
},
|
|
617
|
+
{
|
|
618
|
+
"name": "tokenUriResolver",
|
|
619
|
+
"type": "address",
|
|
620
|
+
"internalType": "contract IJB721TokenUriResolver"
|
|
621
|
+
},
|
|
622
|
+
{
|
|
623
|
+
"name": "contractUri",
|
|
624
|
+
"type": "string",
|
|
625
|
+
"internalType": "string"
|
|
626
|
+
},
|
|
627
|
+
{
|
|
628
|
+
"name": "tiersConfig",
|
|
629
|
+
"type": "tuple",
|
|
630
|
+
"internalType": "struct JB721InitTiersConfig",
|
|
631
|
+
"components": [
|
|
632
|
+
{
|
|
633
|
+
"name": "tiers",
|
|
634
|
+
"type": "tuple[]",
|
|
635
|
+
"internalType": "struct JB721TierConfig[]",
|
|
636
|
+
"components": [
|
|
637
|
+
{
|
|
638
|
+
"name": "price",
|
|
639
|
+
"type": "uint104",
|
|
640
|
+
"internalType": "uint104"
|
|
641
|
+
},
|
|
642
|
+
{
|
|
643
|
+
"name": "initialSupply",
|
|
644
|
+
"type": "uint32",
|
|
645
|
+
"internalType": "uint32"
|
|
646
|
+
},
|
|
647
|
+
{
|
|
648
|
+
"name": "votingUnits",
|
|
649
|
+
"type": "uint32",
|
|
650
|
+
"internalType": "uint32"
|
|
651
|
+
},
|
|
652
|
+
{
|
|
653
|
+
"name": "reserveFrequency",
|
|
654
|
+
"type": "uint16",
|
|
655
|
+
"internalType": "uint16"
|
|
656
|
+
},
|
|
657
|
+
{
|
|
658
|
+
"name": "reserveBeneficiary",
|
|
659
|
+
"type": "address",
|
|
660
|
+
"internalType": "address"
|
|
661
|
+
},
|
|
662
|
+
{
|
|
663
|
+
"name": "encodedIpfsUri",
|
|
664
|
+
"type": "bytes32",
|
|
665
|
+
"internalType": "bytes32"
|
|
666
|
+
},
|
|
667
|
+
{
|
|
668
|
+
"name": "category",
|
|
669
|
+
"type": "uint24",
|
|
670
|
+
"internalType": "uint24"
|
|
671
|
+
},
|
|
672
|
+
{
|
|
673
|
+
"name": "discountPercent",
|
|
674
|
+
"type": "uint8",
|
|
675
|
+
"internalType": "uint8"
|
|
676
|
+
},
|
|
677
|
+
{
|
|
678
|
+
"name": "flags",
|
|
679
|
+
"type": "tuple",
|
|
680
|
+
"internalType": "struct JB721TierConfigFlags",
|
|
681
|
+
"components": [
|
|
682
|
+
{
|
|
683
|
+
"name": "allowOwnerMint",
|
|
684
|
+
"type": "bool",
|
|
685
|
+
"internalType": "bool"
|
|
686
|
+
},
|
|
687
|
+
{
|
|
688
|
+
"name": "useReserveBeneficiaryAsDefault",
|
|
689
|
+
"type": "bool",
|
|
690
|
+
"internalType": "bool"
|
|
691
|
+
},
|
|
692
|
+
{
|
|
693
|
+
"name": "transfersPausable",
|
|
694
|
+
"type": "bool",
|
|
695
|
+
"internalType": "bool"
|
|
696
|
+
},
|
|
697
|
+
{
|
|
698
|
+
"name": "useVotingUnits",
|
|
699
|
+
"type": "bool",
|
|
700
|
+
"internalType": "bool"
|
|
701
|
+
},
|
|
702
|
+
{
|
|
703
|
+
"name": "cantBeRemoved",
|
|
704
|
+
"type": "bool",
|
|
705
|
+
"internalType": "bool"
|
|
706
|
+
},
|
|
707
|
+
{
|
|
708
|
+
"name": "cantIncreaseDiscountPercent",
|
|
709
|
+
"type": "bool",
|
|
710
|
+
"internalType": "bool"
|
|
711
|
+
},
|
|
712
|
+
{
|
|
713
|
+
"name": "cantBuyWithCredits",
|
|
714
|
+
"type": "bool",
|
|
715
|
+
"internalType": "bool"
|
|
716
|
+
}
|
|
717
|
+
]
|
|
718
|
+
},
|
|
719
|
+
{
|
|
720
|
+
"name": "splitPercent",
|
|
721
|
+
"type": "uint32",
|
|
722
|
+
"internalType": "uint32"
|
|
723
|
+
},
|
|
724
|
+
{
|
|
725
|
+
"name": "splits",
|
|
726
|
+
"type": "tuple[]",
|
|
727
|
+
"internalType": "struct JBSplit[]",
|
|
728
|
+
"components": [
|
|
729
|
+
{
|
|
730
|
+
"name": "percent",
|
|
731
|
+
"type": "uint32",
|
|
732
|
+
"internalType": "uint32"
|
|
733
|
+
},
|
|
734
|
+
{
|
|
735
|
+
"name": "projectId",
|
|
736
|
+
"type": "uint64",
|
|
737
|
+
"internalType": "uint64"
|
|
738
|
+
},
|
|
739
|
+
{
|
|
740
|
+
"name": "beneficiary",
|
|
741
|
+
"type": "address",
|
|
742
|
+
"internalType": "address payable"
|
|
743
|
+
},
|
|
744
|
+
{
|
|
745
|
+
"name": "preferAddToBalance",
|
|
746
|
+
"type": "bool",
|
|
747
|
+
"internalType": "bool"
|
|
748
|
+
},
|
|
749
|
+
{
|
|
750
|
+
"name": "lockedUntil",
|
|
751
|
+
"type": "uint48",
|
|
752
|
+
"internalType": "uint48"
|
|
753
|
+
},
|
|
754
|
+
{
|
|
755
|
+
"name": "hook",
|
|
756
|
+
"type": "address",
|
|
757
|
+
"internalType": "contract IJBSplitHook"
|
|
758
|
+
}
|
|
759
|
+
]
|
|
760
|
+
}
|
|
761
|
+
]
|
|
762
|
+
},
|
|
763
|
+
{
|
|
764
|
+
"name": "currency",
|
|
765
|
+
"type": "uint32",
|
|
766
|
+
"internalType": "uint32"
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
"name": "decimals",
|
|
770
|
+
"type": "uint8",
|
|
771
|
+
"internalType": "uint8"
|
|
772
|
+
}
|
|
773
|
+
]
|
|
774
|
+
},
|
|
775
|
+
{
|
|
776
|
+
"name": "flags",
|
|
777
|
+
"type": "tuple",
|
|
778
|
+
"internalType": "struct JB721TiersHookFlags",
|
|
779
|
+
"components": [
|
|
780
|
+
{
|
|
781
|
+
"name": "noNewTiersWithReserves",
|
|
782
|
+
"type": "bool",
|
|
783
|
+
"internalType": "bool"
|
|
784
|
+
},
|
|
785
|
+
{
|
|
786
|
+
"name": "noNewTiersWithVotes",
|
|
787
|
+
"type": "bool",
|
|
788
|
+
"internalType": "bool"
|
|
789
|
+
},
|
|
790
|
+
{
|
|
791
|
+
"name": "noNewTiersWithOwnerMinting",
|
|
792
|
+
"type": "bool",
|
|
793
|
+
"internalType": "bool"
|
|
794
|
+
},
|
|
795
|
+
{
|
|
796
|
+
"name": "preventOverspending",
|
|
797
|
+
"type": "bool",
|
|
798
|
+
"internalType": "bool"
|
|
799
|
+
},
|
|
800
|
+
{
|
|
801
|
+
"name": "issueTokensForSplits",
|
|
802
|
+
"type": "bool",
|
|
803
|
+
"internalType": "bool"
|
|
804
|
+
}
|
|
805
|
+
]
|
|
806
|
+
}
|
|
807
|
+
]
|
|
808
|
+
},
|
|
809
|
+
{
|
|
810
|
+
"name": "useDataHookForCashOut",
|
|
811
|
+
"type": "bool",
|
|
812
|
+
"internalType": "bool"
|
|
813
|
+
},
|
|
814
|
+
{
|
|
815
|
+
"name": "salt",
|
|
816
|
+
"type": "bytes32",
|
|
817
|
+
"internalType": "bytes32"
|
|
818
|
+
}
|
|
819
|
+
]
|
|
820
|
+
},
|
|
821
|
+
{
|
|
822
|
+
"name": "rulesetConfigurations",
|
|
823
|
+
"type": "tuple[]",
|
|
824
|
+
"internalType": "struct JBRulesetConfig[]",
|
|
825
|
+
"components": [
|
|
826
|
+
{
|
|
827
|
+
"name": "mustStartAtOrAfter",
|
|
828
|
+
"type": "uint48",
|
|
829
|
+
"internalType": "uint48"
|
|
830
|
+
},
|
|
831
|
+
{
|
|
832
|
+
"name": "duration",
|
|
833
|
+
"type": "uint32",
|
|
834
|
+
"internalType": "uint32"
|
|
835
|
+
},
|
|
836
|
+
{
|
|
837
|
+
"name": "weight",
|
|
838
|
+
"type": "uint112",
|
|
839
|
+
"internalType": "uint112"
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
"name": "weightCutPercent",
|
|
843
|
+
"type": "uint32",
|
|
844
|
+
"internalType": "uint32"
|
|
845
|
+
},
|
|
846
|
+
{
|
|
847
|
+
"name": "approvalHook",
|
|
848
|
+
"type": "address",
|
|
849
|
+
"internalType": "contract IJBRulesetApprovalHook"
|
|
850
|
+
},
|
|
851
|
+
{
|
|
852
|
+
"name": "metadata",
|
|
853
|
+
"type": "tuple",
|
|
854
|
+
"internalType": "struct JBRulesetMetadata",
|
|
855
|
+
"components": [
|
|
856
|
+
{
|
|
857
|
+
"name": "reservedPercent",
|
|
858
|
+
"type": "uint16",
|
|
859
|
+
"internalType": "uint16"
|
|
860
|
+
},
|
|
861
|
+
{
|
|
862
|
+
"name": "cashOutTaxRate",
|
|
863
|
+
"type": "uint16",
|
|
864
|
+
"internalType": "uint16"
|
|
865
|
+
},
|
|
866
|
+
{
|
|
867
|
+
"name": "baseCurrency",
|
|
868
|
+
"type": "uint32",
|
|
869
|
+
"internalType": "uint32"
|
|
870
|
+
},
|
|
871
|
+
{
|
|
872
|
+
"name": "pausePay",
|
|
873
|
+
"type": "bool",
|
|
874
|
+
"internalType": "bool"
|
|
875
|
+
},
|
|
876
|
+
{
|
|
877
|
+
"name": "pauseCreditTransfers",
|
|
878
|
+
"type": "bool",
|
|
879
|
+
"internalType": "bool"
|
|
880
|
+
},
|
|
881
|
+
{
|
|
882
|
+
"name": "allowOwnerMinting",
|
|
883
|
+
"type": "bool",
|
|
884
|
+
"internalType": "bool"
|
|
885
|
+
},
|
|
886
|
+
{
|
|
887
|
+
"name": "allowSetCustomToken",
|
|
888
|
+
"type": "bool",
|
|
889
|
+
"internalType": "bool"
|
|
890
|
+
},
|
|
891
|
+
{
|
|
892
|
+
"name": "allowTerminalMigration",
|
|
893
|
+
"type": "bool",
|
|
894
|
+
"internalType": "bool"
|
|
895
|
+
},
|
|
896
|
+
{
|
|
897
|
+
"name": "allowSetTerminals",
|
|
898
|
+
"type": "bool",
|
|
899
|
+
"internalType": "bool"
|
|
900
|
+
},
|
|
901
|
+
{
|
|
902
|
+
"name": "allowSetController",
|
|
903
|
+
"type": "bool",
|
|
904
|
+
"internalType": "bool"
|
|
905
|
+
},
|
|
906
|
+
{
|
|
907
|
+
"name": "allowAddAccountingContext",
|
|
908
|
+
"type": "bool",
|
|
909
|
+
"internalType": "bool"
|
|
910
|
+
},
|
|
911
|
+
{
|
|
912
|
+
"name": "allowAddPriceFeed",
|
|
913
|
+
"type": "bool",
|
|
914
|
+
"internalType": "bool"
|
|
915
|
+
},
|
|
916
|
+
{
|
|
917
|
+
"name": "ownerMustSendPayouts",
|
|
918
|
+
"type": "bool",
|
|
919
|
+
"internalType": "bool"
|
|
920
|
+
},
|
|
921
|
+
{
|
|
922
|
+
"name": "holdFees",
|
|
923
|
+
"type": "bool",
|
|
924
|
+
"internalType": "bool"
|
|
925
|
+
},
|
|
926
|
+
{
|
|
927
|
+
"name": "scopeCashOutsToLocalBalances",
|
|
928
|
+
"type": "bool",
|
|
929
|
+
"internalType": "bool"
|
|
930
|
+
},
|
|
931
|
+
{
|
|
932
|
+
"name": "useDataHookForPay",
|
|
933
|
+
"type": "bool",
|
|
934
|
+
"internalType": "bool"
|
|
935
|
+
},
|
|
936
|
+
{
|
|
937
|
+
"name": "useDataHookForCashOut",
|
|
938
|
+
"type": "bool",
|
|
939
|
+
"internalType": "bool"
|
|
940
|
+
},
|
|
941
|
+
{
|
|
942
|
+
"name": "dataHook",
|
|
943
|
+
"type": "address",
|
|
944
|
+
"internalType": "address"
|
|
945
|
+
},
|
|
946
|
+
{
|
|
947
|
+
"name": "metadata",
|
|
948
|
+
"type": "uint16",
|
|
949
|
+
"internalType": "uint16"
|
|
950
|
+
}
|
|
951
|
+
]
|
|
952
|
+
},
|
|
953
|
+
{
|
|
954
|
+
"name": "splitGroups",
|
|
955
|
+
"type": "tuple[]",
|
|
956
|
+
"internalType": "struct JBSplitGroup[]",
|
|
957
|
+
"components": [
|
|
958
|
+
{
|
|
959
|
+
"name": "groupId",
|
|
960
|
+
"type": "uint256",
|
|
961
|
+
"internalType": "uint256"
|
|
962
|
+
},
|
|
963
|
+
{
|
|
964
|
+
"name": "splits",
|
|
965
|
+
"type": "tuple[]",
|
|
966
|
+
"internalType": "struct JBSplit[]",
|
|
967
|
+
"components": [
|
|
968
|
+
{
|
|
969
|
+
"name": "percent",
|
|
970
|
+
"type": "uint32",
|
|
971
|
+
"internalType": "uint32"
|
|
972
|
+
},
|
|
973
|
+
{
|
|
974
|
+
"name": "projectId",
|
|
975
|
+
"type": "uint64",
|
|
976
|
+
"internalType": "uint64"
|
|
977
|
+
},
|
|
978
|
+
{
|
|
979
|
+
"name": "beneficiary",
|
|
980
|
+
"type": "address",
|
|
981
|
+
"internalType": "address payable"
|
|
982
|
+
},
|
|
983
|
+
{
|
|
984
|
+
"name": "preferAddToBalance",
|
|
985
|
+
"type": "bool",
|
|
986
|
+
"internalType": "bool"
|
|
987
|
+
},
|
|
988
|
+
{
|
|
989
|
+
"name": "lockedUntil",
|
|
990
|
+
"type": "uint48",
|
|
991
|
+
"internalType": "uint48"
|
|
992
|
+
},
|
|
993
|
+
{
|
|
994
|
+
"name": "hook",
|
|
995
|
+
"type": "address",
|
|
996
|
+
"internalType": "contract IJBSplitHook"
|
|
997
|
+
}
|
|
998
|
+
]
|
|
999
|
+
}
|
|
1000
|
+
]
|
|
1001
|
+
},
|
|
1002
|
+
{
|
|
1003
|
+
"name": "fundAccessLimitGroups",
|
|
1004
|
+
"type": "tuple[]",
|
|
1005
|
+
"internalType": "struct JBFundAccessLimitGroup[]",
|
|
1006
|
+
"components": [
|
|
1007
|
+
{
|
|
1008
|
+
"name": "terminal",
|
|
1009
|
+
"type": "address",
|
|
1010
|
+
"internalType": "address"
|
|
1011
|
+
},
|
|
1012
|
+
{
|
|
1013
|
+
"name": "token",
|
|
1014
|
+
"type": "address",
|
|
1015
|
+
"internalType": "address"
|
|
1016
|
+
},
|
|
1017
|
+
{
|
|
1018
|
+
"name": "payoutLimits",
|
|
1019
|
+
"type": "tuple[]",
|
|
1020
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
1021
|
+
"components": [
|
|
1022
|
+
{
|
|
1023
|
+
"name": "amount",
|
|
1024
|
+
"type": "uint224",
|
|
1025
|
+
"internalType": "uint224"
|
|
1026
|
+
},
|
|
1027
|
+
{
|
|
1028
|
+
"name": "currency",
|
|
1029
|
+
"type": "uint32",
|
|
1030
|
+
"internalType": "uint32"
|
|
1031
|
+
}
|
|
1032
|
+
]
|
|
1033
|
+
},
|
|
1034
|
+
{
|
|
1035
|
+
"name": "surplusAllowances",
|
|
1036
|
+
"type": "tuple[]",
|
|
1037
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
1038
|
+
"components": [
|
|
1039
|
+
{
|
|
1040
|
+
"name": "amount",
|
|
1041
|
+
"type": "uint224",
|
|
1042
|
+
"internalType": "uint224"
|
|
1043
|
+
},
|
|
1044
|
+
{
|
|
1045
|
+
"name": "currency",
|
|
1046
|
+
"type": "uint32",
|
|
1047
|
+
"internalType": "uint32"
|
|
1048
|
+
}
|
|
1049
|
+
]
|
|
1050
|
+
}
|
|
1051
|
+
]
|
|
1052
|
+
}
|
|
1053
|
+
]
|
|
1054
|
+
},
|
|
1055
|
+
{
|
|
1056
|
+
"name": "terminalConfigurations",
|
|
1057
|
+
"type": "tuple[]",
|
|
1058
|
+
"internalType": "struct JBTerminalConfig[]",
|
|
1059
|
+
"components": [
|
|
1060
|
+
{
|
|
1061
|
+
"name": "terminal",
|
|
1062
|
+
"type": "address",
|
|
1063
|
+
"internalType": "contract IJBTerminal"
|
|
1064
|
+
},
|
|
1065
|
+
{
|
|
1066
|
+
"name": "accountingContextsToAccept",
|
|
1067
|
+
"type": "tuple[]",
|
|
1068
|
+
"internalType": "struct JBAccountingContext[]",
|
|
1069
|
+
"components": [
|
|
1070
|
+
{
|
|
1071
|
+
"name": "token",
|
|
1072
|
+
"type": "address",
|
|
1073
|
+
"internalType": "address"
|
|
1074
|
+
},
|
|
1075
|
+
{
|
|
1076
|
+
"name": "decimals",
|
|
1077
|
+
"type": "uint8",
|
|
1078
|
+
"internalType": "uint8"
|
|
1079
|
+
},
|
|
1080
|
+
{
|
|
1081
|
+
"name": "currency",
|
|
1082
|
+
"type": "uint32",
|
|
1083
|
+
"internalType": "uint32"
|
|
1084
|
+
}
|
|
1085
|
+
]
|
|
1086
|
+
}
|
|
1087
|
+
]
|
|
1088
|
+
},
|
|
1089
|
+
{
|
|
1090
|
+
"name": "memo",
|
|
1091
|
+
"type": "string",
|
|
1092
|
+
"internalType": "string"
|
|
1093
|
+
},
|
|
1094
|
+
{
|
|
1095
|
+
"name": "suckerDeploymentConfiguration",
|
|
1096
|
+
"type": "tuple",
|
|
1097
|
+
"internalType": "struct JBSuckerDeploymentConfig",
|
|
1098
|
+
"components": [
|
|
1099
|
+
{
|
|
1100
|
+
"name": "deployerConfigurations",
|
|
1101
|
+
"type": "tuple[]",
|
|
1102
|
+
"internalType": "struct JBSuckerDeployerConfig[]",
|
|
1103
|
+
"components": [
|
|
1104
|
+
{
|
|
1105
|
+
"name": "deployer",
|
|
1106
|
+
"type": "address",
|
|
1107
|
+
"internalType": "contract IJBSuckerDeployer"
|
|
1108
|
+
},
|
|
1109
|
+
{
|
|
1110
|
+
"name": "peer",
|
|
1111
|
+
"type": "bytes32",
|
|
1112
|
+
"internalType": "bytes32"
|
|
1113
|
+
},
|
|
1114
|
+
{
|
|
1115
|
+
"name": "mappings",
|
|
1116
|
+
"type": "tuple[]",
|
|
1117
|
+
"internalType": "struct JBTokenMapping[]",
|
|
1118
|
+
"components": [
|
|
1119
|
+
{
|
|
1120
|
+
"name": "localToken",
|
|
1121
|
+
"type": "address",
|
|
1122
|
+
"internalType": "address"
|
|
1123
|
+
},
|
|
1124
|
+
{
|
|
1125
|
+
"name": "minGas",
|
|
1126
|
+
"type": "uint32",
|
|
1127
|
+
"internalType": "uint32"
|
|
1128
|
+
},
|
|
1129
|
+
{
|
|
1130
|
+
"name": "remoteToken",
|
|
1131
|
+
"type": "bytes32",
|
|
1132
|
+
"internalType": "bytes32"
|
|
1133
|
+
}
|
|
1134
|
+
]
|
|
1135
|
+
}
|
|
1136
|
+
]
|
|
1137
|
+
},
|
|
1138
|
+
{
|
|
1139
|
+
"name": "salt",
|
|
1140
|
+
"type": "bytes32",
|
|
1141
|
+
"internalType": "bytes32"
|
|
1142
|
+
}
|
|
1143
|
+
]
|
|
1144
|
+
}
|
|
1145
|
+
],
|
|
1146
|
+
"outputs": [
|
|
1147
|
+
{
|
|
1148
|
+
"name": "projectId",
|
|
1149
|
+
"type": "uint256",
|
|
1150
|
+
"internalType": "uint256"
|
|
1151
|
+
},
|
|
1152
|
+
{
|
|
1153
|
+
"name": "hook",
|
|
1154
|
+
"type": "address",
|
|
1155
|
+
"internalType": "contract IJB721TiersHook"
|
|
1156
|
+
},
|
|
1157
|
+
{
|
|
1158
|
+
"name": "suckers",
|
|
1159
|
+
"type": "address[]",
|
|
1160
|
+
"internalType": "address[]"
|
|
1161
|
+
}
|
|
1162
|
+
],
|
|
1163
|
+
"stateMutability": "payable"
|
|
1164
|
+
},
|
|
1165
|
+
{
|
|
1166
|
+
"type": "function",
|
|
1167
|
+
"name": "launchProjectFor",
|
|
1168
|
+
"inputs": [
|
|
1169
|
+
{
|
|
1170
|
+
"name": "owner",
|
|
1171
|
+
"type": "address",
|
|
1172
|
+
"internalType": "address"
|
|
1173
|
+
},
|
|
1174
|
+
{
|
|
1175
|
+
"name": "projectUri",
|
|
1176
|
+
"type": "string",
|
|
1177
|
+
"internalType": "string"
|
|
1178
|
+
},
|
|
1179
|
+
{
|
|
1180
|
+
"name": "rulesetConfigurations",
|
|
1181
|
+
"type": "tuple[]",
|
|
1182
|
+
"internalType": "struct JBRulesetConfig[]",
|
|
1183
|
+
"components": [
|
|
1184
|
+
{
|
|
1185
|
+
"name": "mustStartAtOrAfter",
|
|
1186
|
+
"type": "uint48",
|
|
1187
|
+
"internalType": "uint48"
|
|
1188
|
+
},
|
|
1189
|
+
{
|
|
1190
|
+
"name": "duration",
|
|
1191
|
+
"type": "uint32",
|
|
1192
|
+
"internalType": "uint32"
|
|
1193
|
+
},
|
|
1194
|
+
{
|
|
1195
|
+
"name": "weight",
|
|
1196
|
+
"type": "uint112",
|
|
1197
|
+
"internalType": "uint112"
|
|
1198
|
+
},
|
|
1199
|
+
{
|
|
1200
|
+
"name": "weightCutPercent",
|
|
1201
|
+
"type": "uint32",
|
|
1202
|
+
"internalType": "uint32"
|
|
1203
|
+
},
|
|
1204
|
+
{
|
|
1205
|
+
"name": "approvalHook",
|
|
1206
|
+
"type": "address",
|
|
1207
|
+
"internalType": "contract IJBRulesetApprovalHook"
|
|
1208
|
+
},
|
|
1209
|
+
{
|
|
1210
|
+
"name": "metadata",
|
|
1211
|
+
"type": "tuple",
|
|
1212
|
+
"internalType": "struct JBRulesetMetadata",
|
|
1213
|
+
"components": [
|
|
1214
|
+
{
|
|
1215
|
+
"name": "reservedPercent",
|
|
1216
|
+
"type": "uint16",
|
|
1217
|
+
"internalType": "uint16"
|
|
1218
|
+
},
|
|
1219
|
+
{
|
|
1220
|
+
"name": "cashOutTaxRate",
|
|
1221
|
+
"type": "uint16",
|
|
1222
|
+
"internalType": "uint16"
|
|
1223
|
+
},
|
|
1224
|
+
{
|
|
1225
|
+
"name": "baseCurrency",
|
|
1226
|
+
"type": "uint32",
|
|
1227
|
+
"internalType": "uint32"
|
|
1228
|
+
},
|
|
1229
|
+
{
|
|
1230
|
+
"name": "pausePay",
|
|
1231
|
+
"type": "bool",
|
|
1232
|
+
"internalType": "bool"
|
|
1233
|
+
},
|
|
1234
|
+
{
|
|
1235
|
+
"name": "pauseCreditTransfers",
|
|
1236
|
+
"type": "bool",
|
|
1237
|
+
"internalType": "bool"
|
|
1238
|
+
},
|
|
1239
|
+
{
|
|
1240
|
+
"name": "allowOwnerMinting",
|
|
1241
|
+
"type": "bool",
|
|
1242
|
+
"internalType": "bool"
|
|
1243
|
+
},
|
|
1244
|
+
{
|
|
1245
|
+
"name": "allowSetCustomToken",
|
|
1246
|
+
"type": "bool",
|
|
1247
|
+
"internalType": "bool"
|
|
1248
|
+
},
|
|
1249
|
+
{
|
|
1250
|
+
"name": "allowTerminalMigration",
|
|
1251
|
+
"type": "bool",
|
|
1252
|
+
"internalType": "bool"
|
|
1253
|
+
},
|
|
1254
|
+
{
|
|
1255
|
+
"name": "allowSetTerminals",
|
|
1256
|
+
"type": "bool",
|
|
1257
|
+
"internalType": "bool"
|
|
1258
|
+
},
|
|
1259
|
+
{
|
|
1260
|
+
"name": "allowSetController",
|
|
1261
|
+
"type": "bool",
|
|
1262
|
+
"internalType": "bool"
|
|
1263
|
+
},
|
|
1264
|
+
{
|
|
1265
|
+
"name": "allowAddAccountingContext",
|
|
1266
|
+
"type": "bool",
|
|
1267
|
+
"internalType": "bool"
|
|
1268
|
+
},
|
|
1269
|
+
{
|
|
1270
|
+
"name": "allowAddPriceFeed",
|
|
1271
|
+
"type": "bool",
|
|
1272
|
+
"internalType": "bool"
|
|
1273
|
+
},
|
|
1274
|
+
{
|
|
1275
|
+
"name": "ownerMustSendPayouts",
|
|
1276
|
+
"type": "bool",
|
|
1277
|
+
"internalType": "bool"
|
|
1278
|
+
},
|
|
1279
|
+
{
|
|
1280
|
+
"name": "holdFees",
|
|
1281
|
+
"type": "bool",
|
|
1282
|
+
"internalType": "bool"
|
|
1283
|
+
},
|
|
1284
|
+
{
|
|
1285
|
+
"name": "scopeCashOutsToLocalBalances",
|
|
1286
|
+
"type": "bool",
|
|
1287
|
+
"internalType": "bool"
|
|
1288
|
+
},
|
|
1289
|
+
{
|
|
1290
|
+
"name": "useDataHookForPay",
|
|
1291
|
+
"type": "bool",
|
|
1292
|
+
"internalType": "bool"
|
|
1293
|
+
},
|
|
1294
|
+
{
|
|
1295
|
+
"name": "useDataHookForCashOut",
|
|
1296
|
+
"type": "bool",
|
|
1297
|
+
"internalType": "bool"
|
|
1298
|
+
},
|
|
1299
|
+
{
|
|
1300
|
+
"name": "dataHook",
|
|
1301
|
+
"type": "address",
|
|
1302
|
+
"internalType": "address"
|
|
1303
|
+
},
|
|
1304
|
+
{
|
|
1305
|
+
"name": "metadata",
|
|
1306
|
+
"type": "uint16",
|
|
1307
|
+
"internalType": "uint16"
|
|
1308
|
+
}
|
|
1309
|
+
]
|
|
1310
|
+
},
|
|
1311
|
+
{
|
|
1312
|
+
"name": "splitGroups",
|
|
1313
|
+
"type": "tuple[]",
|
|
1314
|
+
"internalType": "struct JBSplitGroup[]",
|
|
1315
|
+
"components": [
|
|
1316
|
+
{
|
|
1317
|
+
"name": "groupId",
|
|
1318
|
+
"type": "uint256",
|
|
1319
|
+
"internalType": "uint256"
|
|
1320
|
+
},
|
|
1321
|
+
{
|
|
1322
|
+
"name": "splits",
|
|
1323
|
+
"type": "tuple[]",
|
|
1324
|
+
"internalType": "struct JBSplit[]",
|
|
1325
|
+
"components": [
|
|
1326
|
+
{
|
|
1327
|
+
"name": "percent",
|
|
1328
|
+
"type": "uint32",
|
|
1329
|
+
"internalType": "uint32"
|
|
1330
|
+
},
|
|
1331
|
+
{
|
|
1332
|
+
"name": "projectId",
|
|
1333
|
+
"type": "uint64",
|
|
1334
|
+
"internalType": "uint64"
|
|
1335
|
+
},
|
|
1336
|
+
{
|
|
1337
|
+
"name": "beneficiary",
|
|
1338
|
+
"type": "address",
|
|
1339
|
+
"internalType": "address payable"
|
|
1340
|
+
},
|
|
1341
|
+
{
|
|
1342
|
+
"name": "preferAddToBalance",
|
|
1343
|
+
"type": "bool",
|
|
1344
|
+
"internalType": "bool"
|
|
1345
|
+
},
|
|
1346
|
+
{
|
|
1347
|
+
"name": "lockedUntil",
|
|
1348
|
+
"type": "uint48",
|
|
1349
|
+
"internalType": "uint48"
|
|
1350
|
+
},
|
|
1351
|
+
{
|
|
1352
|
+
"name": "hook",
|
|
1353
|
+
"type": "address",
|
|
1354
|
+
"internalType": "contract IJBSplitHook"
|
|
1355
|
+
}
|
|
1356
|
+
]
|
|
1357
|
+
}
|
|
1358
|
+
]
|
|
1359
|
+
},
|
|
1360
|
+
{
|
|
1361
|
+
"name": "fundAccessLimitGroups",
|
|
1362
|
+
"type": "tuple[]",
|
|
1363
|
+
"internalType": "struct JBFundAccessLimitGroup[]",
|
|
1364
|
+
"components": [
|
|
1365
|
+
{
|
|
1366
|
+
"name": "terminal",
|
|
1367
|
+
"type": "address",
|
|
1368
|
+
"internalType": "address"
|
|
1369
|
+
},
|
|
1370
|
+
{
|
|
1371
|
+
"name": "token",
|
|
1372
|
+
"type": "address",
|
|
1373
|
+
"internalType": "address"
|
|
1374
|
+
},
|
|
1375
|
+
{
|
|
1376
|
+
"name": "payoutLimits",
|
|
1377
|
+
"type": "tuple[]",
|
|
1378
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
1379
|
+
"components": [
|
|
1380
|
+
{
|
|
1381
|
+
"name": "amount",
|
|
1382
|
+
"type": "uint224",
|
|
1383
|
+
"internalType": "uint224"
|
|
1384
|
+
},
|
|
1385
|
+
{
|
|
1386
|
+
"name": "currency",
|
|
1387
|
+
"type": "uint32",
|
|
1388
|
+
"internalType": "uint32"
|
|
1389
|
+
}
|
|
1390
|
+
]
|
|
1391
|
+
},
|
|
1392
|
+
{
|
|
1393
|
+
"name": "surplusAllowances",
|
|
1394
|
+
"type": "tuple[]",
|
|
1395
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
1396
|
+
"components": [
|
|
1397
|
+
{
|
|
1398
|
+
"name": "amount",
|
|
1399
|
+
"type": "uint224",
|
|
1400
|
+
"internalType": "uint224"
|
|
1401
|
+
},
|
|
1402
|
+
{
|
|
1403
|
+
"name": "currency",
|
|
1404
|
+
"type": "uint32",
|
|
1405
|
+
"internalType": "uint32"
|
|
1406
|
+
}
|
|
1407
|
+
]
|
|
1408
|
+
}
|
|
1409
|
+
]
|
|
1410
|
+
}
|
|
1411
|
+
]
|
|
1412
|
+
},
|
|
1413
|
+
{
|
|
1414
|
+
"name": "terminalConfigurations",
|
|
1415
|
+
"type": "tuple[]",
|
|
1416
|
+
"internalType": "struct JBTerminalConfig[]",
|
|
1417
|
+
"components": [
|
|
1418
|
+
{
|
|
1419
|
+
"name": "terminal",
|
|
1420
|
+
"type": "address",
|
|
1421
|
+
"internalType": "contract IJBTerminal"
|
|
1422
|
+
},
|
|
1423
|
+
{
|
|
1424
|
+
"name": "accountingContextsToAccept",
|
|
1425
|
+
"type": "tuple[]",
|
|
1426
|
+
"internalType": "struct JBAccountingContext[]",
|
|
1427
|
+
"components": [
|
|
1428
|
+
{
|
|
1429
|
+
"name": "token",
|
|
1430
|
+
"type": "address",
|
|
1431
|
+
"internalType": "address"
|
|
1432
|
+
},
|
|
1433
|
+
{
|
|
1434
|
+
"name": "decimals",
|
|
1435
|
+
"type": "uint8",
|
|
1436
|
+
"internalType": "uint8"
|
|
1437
|
+
},
|
|
1438
|
+
{
|
|
1439
|
+
"name": "currency",
|
|
1440
|
+
"type": "uint32",
|
|
1441
|
+
"internalType": "uint32"
|
|
1442
|
+
}
|
|
1443
|
+
]
|
|
1444
|
+
}
|
|
1445
|
+
]
|
|
1446
|
+
},
|
|
1447
|
+
{
|
|
1448
|
+
"name": "memo",
|
|
1449
|
+
"type": "string",
|
|
1450
|
+
"internalType": "string"
|
|
1451
|
+
},
|
|
1452
|
+
{
|
|
1453
|
+
"name": "suckerDeploymentConfiguration",
|
|
1454
|
+
"type": "tuple",
|
|
1455
|
+
"internalType": "struct JBSuckerDeploymentConfig",
|
|
1456
|
+
"components": [
|
|
1457
|
+
{
|
|
1458
|
+
"name": "deployerConfigurations",
|
|
1459
|
+
"type": "tuple[]",
|
|
1460
|
+
"internalType": "struct JBSuckerDeployerConfig[]",
|
|
1461
|
+
"components": [
|
|
1462
|
+
{
|
|
1463
|
+
"name": "deployer",
|
|
1464
|
+
"type": "address",
|
|
1465
|
+
"internalType": "contract IJBSuckerDeployer"
|
|
1466
|
+
},
|
|
1467
|
+
{
|
|
1468
|
+
"name": "peer",
|
|
1469
|
+
"type": "bytes32",
|
|
1470
|
+
"internalType": "bytes32"
|
|
1471
|
+
},
|
|
1472
|
+
{
|
|
1473
|
+
"name": "mappings",
|
|
1474
|
+
"type": "tuple[]",
|
|
1475
|
+
"internalType": "struct JBTokenMapping[]",
|
|
1476
|
+
"components": [
|
|
1477
|
+
{
|
|
1478
|
+
"name": "localToken",
|
|
1479
|
+
"type": "address",
|
|
1480
|
+
"internalType": "address"
|
|
1481
|
+
},
|
|
1482
|
+
{
|
|
1483
|
+
"name": "minGas",
|
|
1484
|
+
"type": "uint32",
|
|
1485
|
+
"internalType": "uint32"
|
|
1486
|
+
},
|
|
1487
|
+
{
|
|
1488
|
+
"name": "remoteToken",
|
|
1489
|
+
"type": "bytes32",
|
|
1490
|
+
"internalType": "bytes32"
|
|
1491
|
+
}
|
|
1492
|
+
]
|
|
1493
|
+
}
|
|
1494
|
+
]
|
|
1495
|
+
},
|
|
1496
|
+
{
|
|
1497
|
+
"name": "salt",
|
|
1498
|
+
"type": "bytes32",
|
|
1499
|
+
"internalType": "bytes32"
|
|
1500
|
+
}
|
|
1501
|
+
]
|
|
1502
|
+
}
|
|
1503
|
+
],
|
|
1504
|
+
"outputs": [
|
|
1505
|
+
{
|
|
1506
|
+
"name": "projectId",
|
|
1507
|
+
"type": "uint256",
|
|
1508
|
+
"internalType": "uint256"
|
|
1509
|
+
},
|
|
1510
|
+
{
|
|
1511
|
+
"name": "hook",
|
|
1512
|
+
"type": "address",
|
|
1513
|
+
"internalType": "contract IJB721TiersHook"
|
|
1514
|
+
},
|
|
1515
|
+
{
|
|
1516
|
+
"name": "suckers",
|
|
1517
|
+
"type": "address[]",
|
|
1518
|
+
"internalType": "address[]"
|
|
1519
|
+
}
|
|
1520
|
+
],
|
|
1521
|
+
"stateMutability": "payable"
|
|
1522
|
+
},
|
|
1523
|
+
{
|
|
1524
|
+
"type": "function",
|
|
1525
|
+
"name": "launchRulesetsFor",
|
|
1526
|
+
"inputs": [
|
|
1527
|
+
{
|
|
1528
|
+
"name": "projectId",
|
|
1529
|
+
"type": "uint256",
|
|
1530
|
+
"internalType": "uint256"
|
|
1531
|
+
},
|
|
1532
|
+
{
|
|
1533
|
+
"name": "projectUri",
|
|
1534
|
+
"type": "string",
|
|
1535
|
+
"internalType": "string"
|
|
1536
|
+
},
|
|
1537
|
+
{
|
|
1538
|
+
"name": "rulesetConfigurations",
|
|
1539
|
+
"type": "tuple[]",
|
|
1540
|
+
"internalType": "struct JBRulesetConfig[]",
|
|
1541
|
+
"components": [
|
|
1542
|
+
{
|
|
1543
|
+
"name": "mustStartAtOrAfter",
|
|
1544
|
+
"type": "uint48",
|
|
1545
|
+
"internalType": "uint48"
|
|
1546
|
+
},
|
|
1547
|
+
{
|
|
1548
|
+
"name": "duration",
|
|
1549
|
+
"type": "uint32",
|
|
1550
|
+
"internalType": "uint32"
|
|
1551
|
+
},
|
|
1552
|
+
{
|
|
1553
|
+
"name": "weight",
|
|
1554
|
+
"type": "uint112",
|
|
1555
|
+
"internalType": "uint112"
|
|
1556
|
+
},
|
|
1557
|
+
{
|
|
1558
|
+
"name": "weightCutPercent",
|
|
1559
|
+
"type": "uint32",
|
|
1560
|
+
"internalType": "uint32"
|
|
1561
|
+
},
|
|
1562
|
+
{
|
|
1563
|
+
"name": "approvalHook",
|
|
1564
|
+
"type": "address",
|
|
1565
|
+
"internalType": "contract IJBRulesetApprovalHook"
|
|
1566
|
+
},
|
|
1567
|
+
{
|
|
1568
|
+
"name": "metadata",
|
|
1569
|
+
"type": "tuple",
|
|
1570
|
+
"internalType": "struct JBRulesetMetadata",
|
|
1571
|
+
"components": [
|
|
1572
|
+
{
|
|
1573
|
+
"name": "reservedPercent",
|
|
1574
|
+
"type": "uint16",
|
|
1575
|
+
"internalType": "uint16"
|
|
1576
|
+
},
|
|
1577
|
+
{
|
|
1578
|
+
"name": "cashOutTaxRate",
|
|
1579
|
+
"type": "uint16",
|
|
1580
|
+
"internalType": "uint16"
|
|
1581
|
+
},
|
|
1582
|
+
{
|
|
1583
|
+
"name": "baseCurrency",
|
|
1584
|
+
"type": "uint32",
|
|
1585
|
+
"internalType": "uint32"
|
|
1586
|
+
},
|
|
1587
|
+
{
|
|
1588
|
+
"name": "pausePay",
|
|
1589
|
+
"type": "bool",
|
|
1590
|
+
"internalType": "bool"
|
|
1591
|
+
},
|
|
1592
|
+
{
|
|
1593
|
+
"name": "pauseCreditTransfers",
|
|
1594
|
+
"type": "bool",
|
|
1595
|
+
"internalType": "bool"
|
|
1596
|
+
},
|
|
1597
|
+
{
|
|
1598
|
+
"name": "allowOwnerMinting",
|
|
1599
|
+
"type": "bool",
|
|
1600
|
+
"internalType": "bool"
|
|
1601
|
+
},
|
|
1602
|
+
{
|
|
1603
|
+
"name": "allowSetCustomToken",
|
|
1604
|
+
"type": "bool",
|
|
1605
|
+
"internalType": "bool"
|
|
1606
|
+
},
|
|
1607
|
+
{
|
|
1608
|
+
"name": "allowTerminalMigration",
|
|
1609
|
+
"type": "bool",
|
|
1610
|
+
"internalType": "bool"
|
|
1611
|
+
},
|
|
1612
|
+
{
|
|
1613
|
+
"name": "allowSetTerminals",
|
|
1614
|
+
"type": "bool",
|
|
1615
|
+
"internalType": "bool"
|
|
1616
|
+
},
|
|
1617
|
+
{
|
|
1618
|
+
"name": "allowSetController",
|
|
1619
|
+
"type": "bool",
|
|
1620
|
+
"internalType": "bool"
|
|
1621
|
+
},
|
|
1622
|
+
{
|
|
1623
|
+
"name": "allowAddAccountingContext",
|
|
1624
|
+
"type": "bool",
|
|
1625
|
+
"internalType": "bool"
|
|
1626
|
+
},
|
|
1627
|
+
{
|
|
1628
|
+
"name": "allowAddPriceFeed",
|
|
1629
|
+
"type": "bool",
|
|
1630
|
+
"internalType": "bool"
|
|
1631
|
+
},
|
|
1632
|
+
{
|
|
1633
|
+
"name": "ownerMustSendPayouts",
|
|
1634
|
+
"type": "bool",
|
|
1635
|
+
"internalType": "bool"
|
|
1636
|
+
},
|
|
1637
|
+
{
|
|
1638
|
+
"name": "holdFees",
|
|
1639
|
+
"type": "bool",
|
|
1640
|
+
"internalType": "bool"
|
|
1641
|
+
},
|
|
1642
|
+
{
|
|
1643
|
+
"name": "scopeCashOutsToLocalBalances",
|
|
1644
|
+
"type": "bool",
|
|
1645
|
+
"internalType": "bool"
|
|
1646
|
+
},
|
|
1647
|
+
{
|
|
1648
|
+
"name": "useDataHookForPay",
|
|
1649
|
+
"type": "bool",
|
|
1650
|
+
"internalType": "bool"
|
|
1651
|
+
},
|
|
1652
|
+
{
|
|
1653
|
+
"name": "useDataHookForCashOut",
|
|
1654
|
+
"type": "bool",
|
|
1655
|
+
"internalType": "bool"
|
|
1656
|
+
},
|
|
1657
|
+
{
|
|
1658
|
+
"name": "dataHook",
|
|
1659
|
+
"type": "address",
|
|
1660
|
+
"internalType": "address"
|
|
1661
|
+
},
|
|
1662
|
+
{
|
|
1663
|
+
"name": "metadata",
|
|
1664
|
+
"type": "uint16",
|
|
1665
|
+
"internalType": "uint16"
|
|
1666
|
+
}
|
|
1667
|
+
]
|
|
1668
|
+
},
|
|
1669
|
+
{
|
|
1670
|
+
"name": "splitGroups",
|
|
1671
|
+
"type": "tuple[]",
|
|
1672
|
+
"internalType": "struct JBSplitGroup[]",
|
|
1673
|
+
"components": [
|
|
1674
|
+
{
|
|
1675
|
+
"name": "groupId",
|
|
1676
|
+
"type": "uint256",
|
|
1677
|
+
"internalType": "uint256"
|
|
1678
|
+
},
|
|
1679
|
+
{
|
|
1680
|
+
"name": "splits",
|
|
1681
|
+
"type": "tuple[]",
|
|
1682
|
+
"internalType": "struct JBSplit[]",
|
|
1683
|
+
"components": [
|
|
1684
|
+
{
|
|
1685
|
+
"name": "percent",
|
|
1686
|
+
"type": "uint32",
|
|
1687
|
+
"internalType": "uint32"
|
|
1688
|
+
},
|
|
1689
|
+
{
|
|
1690
|
+
"name": "projectId",
|
|
1691
|
+
"type": "uint64",
|
|
1692
|
+
"internalType": "uint64"
|
|
1693
|
+
},
|
|
1694
|
+
{
|
|
1695
|
+
"name": "beneficiary",
|
|
1696
|
+
"type": "address",
|
|
1697
|
+
"internalType": "address payable"
|
|
1698
|
+
},
|
|
1699
|
+
{
|
|
1700
|
+
"name": "preferAddToBalance",
|
|
1701
|
+
"type": "bool",
|
|
1702
|
+
"internalType": "bool"
|
|
1703
|
+
},
|
|
1704
|
+
{
|
|
1705
|
+
"name": "lockedUntil",
|
|
1706
|
+
"type": "uint48",
|
|
1707
|
+
"internalType": "uint48"
|
|
1708
|
+
},
|
|
1709
|
+
{
|
|
1710
|
+
"name": "hook",
|
|
1711
|
+
"type": "address",
|
|
1712
|
+
"internalType": "contract IJBSplitHook"
|
|
1713
|
+
}
|
|
1714
|
+
]
|
|
1715
|
+
}
|
|
1716
|
+
]
|
|
1717
|
+
},
|
|
1718
|
+
{
|
|
1719
|
+
"name": "fundAccessLimitGroups",
|
|
1720
|
+
"type": "tuple[]",
|
|
1721
|
+
"internalType": "struct JBFundAccessLimitGroup[]",
|
|
1722
|
+
"components": [
|
|
1723
|
+
{
|
|
1724
|
+
"name": "terminal",
|
|
1725
|
+
"type": "address",
|
|
1726
|
+
"internalType": "address"
|
|
1727
|
+
},
|
|
1728
|
+
{
|
|
1729
|
+
"name": "token",
|
|
1730
|
+
"type": "address",
|
|
1731
|
+
"internalType": "address"
|
|
1732
|
+
},
|
|
1733
|
+
{
|
|
1734
|
+
"name": "payoutLimits",
|
|
1735
|
+
"type": "tuple[]",
|
|
1736
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
1737
|
+
"components": [
|
|
1738
|
+
{
|
|
1739
|
+
"name": "amount",
|
|
1740
|
+
"type": "uint224",
|
|
1741
|
+
"internalType": "uint224"
|
|
1742
|
+
},
|
|
1743
|
+
{
|
|
1744
|
+
"name": "currency",
|
|
1745
|
+
"type": "uint32",
|
|
1746
|
+
"internalType": "uint32"
|
|
1747
|
+
}
|
|
1748
|
+
]
|
|
1749
|
+
},
|
|
1750
|
+
{
|
|
1751
|
+
"name": "surplusAllowances",
|
|
1752
|
+
"type": "tuple[]",
|
|
1753
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
1754
|
+
"components": [
|
|
1755
|
+
{
|
|
1756
|
+
"name": "amount",
|
|
1757
|
+
"type": "uint224",
|
|
1758
|
+
"internalType": "uint224"
|
|
1759
|
+
},
|
|
1760
|
+
{
|
|
1761
|
+
"name": "currency",
|
|
1762
|
+
"type": "uint32",
|
|
1763
|
+
"internalType": "uint32"
|
|
1764
|
+
}
|
|
1765
|
+
]
|
|
1766
|
+
}
|
|
1767
|
+
]
|
|
1768
|
+
}
|
|
1769
|
+
]
|
|
1770
|
+
},
|
|
1771
|
+
{
|
|
1772
|
+
"name": "terminalConfigurations",
|
|
1773
|
+
"type": "tuple[]",
|
|
1774
|
+
"internalType": "struct JBTerminalConfig[]",
|
|
1775
|
+
"components": [
|
|
1776
|
+
{
|
|
1777
|
+
"name": "terminal",
|
|
1778
|
+
"type": "address",
|
|
1779
|
+
"internalType": "contract IJBTerminal"
|
|
1780
|
+
},
|
|
1781
|
+
{
|
|
1782
|
+
"name": "accountingContextsToAccept",
|
|
1783
|
+
"type": "tuple[]",
|
|
1784
|
+
"internalType": "struct JBAccountingContext[]",
|
|
1785
|
+
"components": [
|
|
1786
|
+
{
|
|
1787
|
+
"name": "token",
|
|
1788
|
+
"type": "address",
|
|
1789
|
+
"internalType": "address"
|
|
1790
|
+
},
|
|
1791
|
+
{
|
|
1792
|
+
"name": "decimals",
|
|
1793
|
+
"type": "uint8",
|
|
1794
|
+
"internalType": "uint8"
|
|
1795
|
+
},
|
|
1796
|
+
{
|
|
1797
|
+
"name": "currency",
|
|
1798
|
+
"type": "uint32",
|
|
1799
|
+
"internalType": "uint32"
|
|
1800
|
+
}
|
|
1801
|
+
]
|
|
1802
|
+
}
|
|
1803
|
+
]
|
|
1804
|
+
},
|
|
1805
|
+
{
|
|
1806
|
+
"name": "memo",
|
|
1807
|
+
"type": "string",
|
|
1808
|
+
"internalType": "string"
|
|
1809
|
+
}
|
|
1810
|
+
],
|
|
1811
|
+
"outputs": [
|
|
1812
|
+
{
|
|
1813
|
+
"name": "rulesetId",
|
|
1814
|
+
"type": "uint256",
|
|
1815
|
+
"internalType": "uint256"
|
|
1816
|
+
},
|
|
1817
|
+
{
|
|
1818
|
+
"name": "hook",
|
|
1819
|
+
"type": "address",
|
|
1820
|
+
"internalType": "contract IJB721TiersHook"
|
|
1821
|
+
}
|
|
1822
|
+
],
|
|
1823
|
+
"stateMutability": "nonpayable"
|
|
1824
|
+
},
|
|
1825
|
+
{
|
|
1826
|
+
"type": "function",
|
|
1827
|
+
"name": "launchRulesetsFor",
|
|
1828
|
+
"inputs": [
|
|
1829
|
+
{
|
|
1830
|
+
"name": "projectId",
|
|
1831
|
+
"type": "uint256",
|
|
1832
|
+
"internalType": "uint256"
|
|
1833
|
+
},
|
|
1834
|
+
{
|
|
1835
|
+
"name": "projectUri",
|
|
1836
|
+
"type": "string",
|
|
1837
|
+
"internalType": "string"
|
|
1838
|
+
},
|
|
1839
|
+
{
|
|
1840
|
+
"name": "deploy721Config",
|
|
1841
|
+
"type": "tuple",
|
|
1842
|
+
"internalType": "struct JBOmnichain721Config",
|
|
1843
|
+
"components": [
|
|
1844
|
+
{
|
|
1845
|
+
"name": "deployTiersHookConfig",
|
|
1846
|
+
"type": "tuple",
|
|
1847
|
+
"internalType": "struct JBDeploy721TiersHookConfig",
|
|
1848
|
+
"components": [
|
|
1849
|
+
{
|
|
1850
|
+
"name": "name",
|
|
1851
|
+
"type": "string",
|
|
1852
|
+
"internalType": "string"
|
|
1853
|
+
},
|
|
1854
|
+
{
|
|
1855
|
+
"name": "symbol",
|
|
1856
|
+
"type": "string",
|
|
1857
|
+
"internalType": "string"
|
|
1858
|
+
},
|
|
1859
|
+
{
|
|
1860
|
+
"name": "baseUri",
|
|
1861
|
+
"type": "string",
|
|
1862
|
+
"internalType": "string"
|
|
1863
|
+
},
|
|
1864
|
+
{
|
|
1865
|
+
"name": "tokenUriResolver",
|
|
1866
|
+
"type": "address",
|
|
1867
|
+
"internalType": "contract IJB721TokenUriResolver"
|
|
1868
|
+
},
|
|
1869
|
+
{
|
|
1870
|
+
"name": "contractUri",
|
|
1871
|
+
"type": "string",
|
|
1872
|
+
"internalType": "string"
|
|
1873
|
+
},
|
|
1874
|
+
{
|
|
1875
|
+
"name": "tiersConfig",
|
|
1876
|
+
"type": "tuple",
|
|
1877
|
+
"internalType": "struct JB721InitTiersConfig",
|
|
1878
|
+
"components": [
|
|
1879
|
+
{
|
|
1880
|
+
"name": "tiers",
|
|
1881
|
+
"type": "tuple[]",
|
|
1882
|
+
"internalType": "struct JB721TierConfig[]",
|
|
1883
|
+
"components": [
|
|
1884
|
+
{
|
|
1885
|
+
"name": "price",
|
|
1886
|
+
"type": "uint104",
|
|
1887
|
+
"internalType": "uint104"
|
|
1888
|
+
},
|
|
1889
|
+
{
|
|
1890
|
+
"name": "initialSupply",
|
|
1891
|
+
"type": "uint32",
|
|
1892
|
+
"internalType": "uint32"
|
|
1893
|
+
},
|
|
1894
|
+
{
|
|
1895
|
+
"name": "votingUnits",
|
|
1896
|
+
"type": "uint32",
|
|
1897
|
+
"internalType": "uint32"
|
|
1898
|
+
},
|
|
1899
|
+
{
|
|
1900
|
+
"name": "reserveFrequency",
|
|
1901
|
+
"type": "uint16",
|
|
1902
|
+
"internalType": "uint16"
|
|
1903
|
+
},
|
|
1904
|
+
{
|
|
1905
|
+
"name": "reserveBeneficiary",
|
|
1906
|
+
"type": "address",
|
|
1907
|
+
"internalType": "address"
|
|
1908
|
+
},
|
|
1909
|
+
{
|
|
1910
|
+
"name": "encodedIpfsUri",
|
|
1911
|
+
"type": "bytes32",
|
|
1912
|
+
"internalType": "bytes32"
|
|
1913
|
+
},
|
|
1914
|
+
{
|
|
1915
|
+
"name": "category",
|
|
1916
|
+
"type": "uint24",
|
|
1917
|
+
"internalType": "uint24"
|
|
1918
|
+
},
|
|
1919
|
+
{
|
|
1920
|
+
"name": "discountPercent",
|
|
1921
|
+
"type": "uint8",
|
|
1922
|
+
"internalType": "uint8"
|
|
1923
|
+
},
|
|
1924
|
+
{
|
|
1925
|
+
"name": "flags",
|
|
1926
|
+
"type": "tuple",
|
|
1927
|
+
"internalType": "struct JB721TierConfigFlags",
|
|
1928
|
+
"components": [
|
|
1929
|
+
{
|
|
1930
|
+
"name": "allowOwnerMint",
|
|
1931
|
+
"type": "bool",
|
|
1932
|
+
"internalType": "bool"
|
|
1933
|
+
},
|
|
1934
|
+
{
|
|
1935
|
+
"name": "useReserveBeneficiaryAsDefault",
|
|
1936
|
+
"type": "bool",
|
|
1937
|
+
"internalType": "bool"
|
|
1938
|
+
},
|
|
1939
|
+
{
|
|
1940
|
+
"name": "transfersPausable",
|
|
1941
|
+
"type": "bool",
|
|
1942
|
+
"internalType": "bool"
|
|
1943
|
+
},
|
|
1944
|
+
{
|
|
1945
|
+
"name": "useVotingUnits",
|
|
1946
|
+
"type": "bool",
|
|
1947
|
+
"internalType": "bool"
|
|
1948
|
+
},
|
|
1949
|
+
{
|
|
1950
|
+
"name": "cantBeRemoved",
|
|
1951
|
+
"type": "bool",
|
|
1952
|
+
"internalType": "bool"
|
|
1953
|
+
},
|
|
1954
|
+
{
|
|
1955
|
+
"name": "cantIncreaseDiscountPercent",
|
|
1956
|
+
"type": "bool",
|
|
1957
|
+
"internalType": "bool"
|
|
1958
|
+
},
|
|
1959
|
+
{
|
|
1960
|
+
"name": "cantBuyWithCredits",
|
|
1961
|
+
"type": "bool",
|
|
1962
|
+
"internalType": "bool"
|
|
1963
|
+
}
|
|
1964
|
+
]
|
|
1965
|
+
},
|
|
1966
|
+
{
|
|
1967
|
+
"name": "splitPercent",
|
|
1968
|
+
"type": "uint32",
|
|
1969
|
+
"internalType": "uint32"
|
|
1970
|
+
},
|
|
1971
|
+
{
|
|
1972
|
+
"name": "splits",
|
|
1973
|
+
"type": "tuple[]",
|
|
1974
|
+
"internalType": "struct JBSplit[]",
|
|
1975
|
+
"components": [
|
|
1976
|
+
{
|
|
1977
|
+
"name": "percent",
|
|
1978
|
+
"type": "uint32",
|
|
1979
|
+
"internalType": "uint32"
|
|
1980
|
+
},
|
|
1981
|
+
{
|
|
1982
|
+
"name": "projectId",
|
|
1983
|
+
"type": "uint64",
|
|
1984
|
+
"internalType": "uint64"
|
|
1985
|
+
},
|
|
1986
|
+
{
|
|
1987
|
+
"name": "beneficiary",
|
|
1988
|
+
"type": "address",
|
|
1989
|
+
"internalType": "address payable"
|
|
1990
|
+
},
|
|
1991
|
+
{
|
|
1992
|
+
"name": "preferAddToBalance",
|
|
1993
|
+
"type": "bool",
|
|
1994
|
+
"internalType": "bool"
|
|
1995
|
+
},
|
|
1996
|
+
{
|
|
1997
|
+
"name": "lockedUntil",
|
|
1998
|
+
"type": "uint48",
|
|
1999
|
+
"internalType": "uint48"
|
|
2000
|
+
},
|
|
2001
|
+
{
|
|
2002
|
+
"name": "hook",
|
|
2003
|
+
"type": "address",
|
|
2004
|
+
"internalType": "contract IJBSplitHook"
|
|
2005
|
+
}
|
|
2006
|
+
]
|
|
2007
|
+
}
|
|
2008
|
+
]
|
|
2009
|
+
},
|
|
2010
|
+
{
|
|
2011
|
+
"name": "currency",
|
|
2012
|
+
"type": "uint32",
|
|
2013
|
+
"internalType": "uint32"
|
|
2014
|
+
},
|
|
2015
|
+
{
|
|
2016
|
+
"name": "decimals",
|
|
2017
|
+
"type": "uint8",
|
|
2018
|
+
"internalType": "uint8"
|
|
2019
|
+
}
|
|
2020
|
+
]
|
|
2021
|
+
},
|
|
2022
|
+
{
|
|
2023
|
+
"name": "flags",
|
|
2024
|
+
"type": "tuple",
|
|
2025
|
+
"internalType": "struct JB721TiersHookFlags",
|
|
2026
|
+
"components": [
|
|
2027
|
+
{
|
|
2028
|
+
"name": "noNewTiersWithReserves",
|
|
2029
|
+
"type": "bool",
|
|
2030
|
+
"internalType": "bool"
|
|
2031
|
+
},
|
|
2032
|
+
{
|
|
2033
|
+
"name": "noNewTiersWithVotes",
|
|
2034
|
+
"type": "bool",
|
|
2035
|
+
"internalType": "bool"
|
|
2036
|
+
},
|
|
2037
|
+
{
|
|
2038
|
+
"name": "noNewTiersWithOwnerMinting",
|
|
2039
|
+
"type": "bool",
|
|
2040
|
+
"internalType": "bool"
|
|
2041
|
+
},
|
|
2042
|
+
{
|
|
2043
|
+
"name": "preventOverspending",
|
|
2044
|
+
"type": "bool",
|
|
2045
|
+
"internalType": "bool"
|
|
2046
|
+
},
|
|
2047
|
+
{
|
|
2048
|
+
"name": "issueTokensForSplits",
|
|
2049
|
+
"type": "bool",
|
|
2050
|
+
"internalType": "bool"
|
|
2051
|
+
}
|
|
2052
|
+
]
|
|
2053
|
+
}
|
|
2054
|
+
]
|
|
2055
|
+
},
|
|
2056
|
+
{
|
|
2057
|
+
"name": "useDataHookForCashOut",
|
|
2058
|
+
"type": "bool",
|
|
2059
|
+
"internalType": "bool"
|
|
2060
|
+
},
|
|
2061
|
+
{
|
|
2062
|
+
"name": "salt",
|
|
2063
|
+
"type": "bytes32",
|
|
2064
|
+
"internalType": "bytes32"
|
|
2065
|
+
}
|
|
2066
|
+
]
|
|
2067
|
+
},
|
|
2068
|
+
{
|
|
2069
|
+
"name": "rulesetConfigurations",
|
|
2070
|
+
"type": "tuple[]",
|
|
2071
|
+
"internalType": "struct JBRulesetConfig[]",
|
|
2072
|
+
"components": [
|
|
2073
|
+
{
|
|
2074
|
+
"name": "mustStartAtOrAfter",
|
|
2075
|
+
"type": "uint48",
|
|
2076
|
+
"internalType": "uint48"
|
|
2077
|
+
},
|
|
2078
|
+
{
|
|
2079
|
+
"name": "duration",
|
|
2080
|
+
"type": "uint32",
|
|
2081
|
+
"internalType": "uint32"
|
|
2082
|
+
},
|
|
2083
|
+
{
|
|
2084
|
+
"name": "weight",
|
|
2085
|
+
"type": "uint112",
|
|
2086
|
+
"internalType": "uint112"
|
|
2087
|
+
},
|
|
2088
|
+
{
|
|
2089
|
+
"name": "weightCutPercent",
|
|
2090
|
+
"type": "uint32",
|
|
2091
|
+
"internalType": "uint32"
|
|
2092
|
+
},
|
|
2093
|
+
{
|
|
2094
|
+
"name": "approvalHook",
|
|
2095
|
+
"type": "address",
|
|
2096
|
+
"internalType": "contract IJBRulesetApprovalHook"
|
|
2097
|
+
},
|
|
2098
|
+
{
|
|
2099
|
+
"name": "metadata",
|
|
2100
|
+
"type": "tuple",
|
|
2101
|
+
"internalType": "struct JBRulesetMetadata",
|
|
2102
|
+
"components": [
|
|
2103
|
+
{
|
|
2104
|
+
"name": "reservedPercent",
|
|
2105
|
+
"type": "uint16",
|
|
2106
|
+
"internalType": "uint16"
|
|
2107
|
+
},
|
|
2108
|
+
{
|
|
2109
|
+
"name": "cashOutTaxRate",
|
|
2110
|
+
"type": "uint16",
|
|
2111
|
+
"internalType": "uint16"
|
|
2112
|
+
},
|
|
2113
|
+
{
|
|
2114
|
+
"name": "baseCurrency",
|
|
2115
|
+
"type": "uint32",
|
|
2116
|
+
"internalType": "uint32"
|
|
2117
|
+
},
|
|
2118
|
+
{
|
|
2119
|
+
"name": "pausePay",
|
|
2120
|
+
"type": "bool",
|
|
2121
|
+
"internalType": "bool"
|
|
2122
|
+
},
|
|
2123
|
+
{
|
|
2124
|
+
"name": "pauseCreditTransfers",
|
|
2125
|
+
"type": "bool",
|
|
2126
|
+
"internalType": "bool"
|
|
2127
|
+
},
|
|
2128
|
+
{
|
|
2129
|
+
"name": "allowOwnerMinting",
|
|
2130
|
+
"type": "bool",
|
|
2131
|
+
"internalType": "bool"
|
|
2132
|
+
},
|
|
2133
|
+
{
|
|
2134
|
+
"name": "allowSetCustomToken",
|
|
2135
|
+
"type": "bool",
|
|
2136
|
+
"internalType": "bool"
|
|
2137
|
+
},
|
|
2138
|
+
{
|
|
2139
|
+
"name": "allowTerminalMigration",
|
|
2140
|
+
"type": "bool",
|
|
2141
|
+
"internalType": "bool"
|
|
2142
|
+
},
|
|
2143
|
+
{
|
|
2144
|
+
"name": "allowSetTerminals",
|
|
2145
|
+
"type": "bool",
|
|
2146
|
+
"internalType": "bool"
|
|
2147
|
+
},
|
|
2148
|
+
{
|
|
2149
|
+
"name": "allowSetController",
|
|
2150
|
+
"type": "bool",
|
|
2151
|
+
"internalType": "bool"
|
|
2152
|
+
},
|
|
2153
|
+
{
|
|
2154
|
+
"name": "allowAddAccountingContext",
|
|
2155
|
+
"type": "bool",
|
|
2156
|
+
"internalType": "bool"
|
|
2157
|
+
},
|
|
2158
|
+
{
|
|
2159
|
+
"name": "allowAddPriceFeed",
|
|
2160
|
+
"type": "bool",
|
|
2161
|
+
"internalType": "bool"
|
|
2162
|
+
},
|
|
2163
|
+
{
|
|
2164
|
+
"name": "ownerMustSendPayouts",
|
|
2165
|
+
"type": "bool",
|
|
2166
|
+
"internalType": "bool"
|
|
2167
|
+
},
|
|
2168
|
+
{
|
|
2169
|
+
"name": "holdFees",
|
|
2170
|
+
"type": "bool",
|
|
2171
|
+
"internalType": "bool"
|
|
2172
|
+
},
|
|
2173
|
+
{
|
|
2174
|
+
"name": "scopeCashOutsToLocalBalances",
|
|
2175
|
+
"type": "bool",
|
|
2176
|
+
"internalType": "bool"
|
|
2177
|
+
},
|
|
2178
|
+
{
|
|
2179
|
+
"name": "useDataHookForPay",
|
|
2180
|
+
"type": "bool",
|
|
2181
|
+
"internalType": "bool"
|
|
2182
|
+
},
|
|
2183
|
+
{
|
|
2184
|
+
"name": "useDataHookForCashOut",
|
|
2185
|
+
"type": "bool",
|
|
2186
|
+
"internalType": "bool"
|
|
2187
|
+
},
|
|
2188
|
+
{
|
|
2189
|
+
"name": "dataHook",
|
|
2190
|
+
"type": "address",
|
|
2191
|
+
"internalType": "address"
|
|
2192
|
+
},
|
|
2193
|
+
{
|
|
2194
|
+
"name": "metadata",
|
|
2195
|
+
"type": "uint16",
|
|
2196
|
+
"internalType": "uint16"
|
|
2197
|
+
}
|
|
2198
|
+
]
|
|
2199
|
+
},
|
|
2200
|
+
{
|
|
2201
|
+
"name": "splitGroups",
|
|
2202
|
+
"type": "tuple[]",
|
|
2203
|
+
"internalType": "struct JBSplitGroup[]",
|
|
2204
|
+
"components": [
|
|
2205
|
+
{
|
|
2206
|
+
"name": "groupId",
|
|
2207
|
+
"type": "uint256",
|
|
2208
|
+
"internalType": "uint256"
|
|
2209
|
+
},
|
|
2210
|
+
{
|
|
2211
|
+
"name": "splits",
|
|
2212
|
+
"type": "tuple[]",
|
|
2213
|
+
"internalType": "struct JBSplit[]",
|
|
2214
|
+
"components": [
|
|
2215
|
+
{
|
|
2216
|
+
"name": "percent",
|
|
2217
|
+
"type": "uint32",
|
|
2218
|
+
"internalType": "uint32"
|
|
2219
|
+
},
|
|
2220
|
+
{
|
|
2221
|
+
"name": "projectId",
|
|
2222
|
+
"type": "uint64",
|
|
2223
|
+
"internalType": "uint64"
|
|
2224
|
+
},
|
|
2225
|
+
{
|
|
2226
|
+
"name": "beneficiary",
|
|
2227
|
+
"type": "address",
|
|
2228
|
+
"internalType": "address payable"
|
|
2229
|
+
},
|
|
2230
|
+
{
|
|
2231
|
+
"name": "preferAddToBalance",
|
|
2232
|
+
"type": "bool",
|
|
2233
|
+
"internalType": "bool"
|
|
2234
|
+
},
|
|
2235
|
+
{
|
|
2236
|
+
"name": "lockedUntil",
|
|
2237
|
+
"type": "uint48",
|
|
2238
|
+
"internalType": "uint48"
|
|
2239
|
+
},
|
|
2240
|
+
{
|
|
2241
|
+
"name": "hook",
|
|
2242
|
+
"type": "address",
|
|
2243
|
+
"internalType": "contract IJBSplitHook"
|
|
2244
|
+
}
|
|
2245
|
+
]
|
|
2246
|
+
}
|
|
2247
|
+
]
|
|
2248
|
+
},
|
|
2249
|
+
{
|
|
2250
|
+
"name": "fundAccessLimitGroups",
|
|
2251
|
+
"type": "tuple[]",
|
|
2252
|
+
"internalType": "struct JBFundAccessLimitGroup[]",
|
|
2253
|
+
"components": [
|
|
2254
|
+
{
|
|
2255
|
+
"name": "terminal",
|
|
2256
|
+
"type": "address",
|
|
2257
|
+
"internalType": "address"
|
|
2258
|
+
},
|
|
2259
|
+
{
|
|
2260
|
+
"name": "token",
|
|
2261
|
+
"type": "address",
|
|
2262
|
+
"internalType": "address"
|
|
2263
|
+
},
|
|
2264
|
+
{
|
|
2265
|
+
"name": "payoutLimits",
|
|
2266
|
+
"type": "tuple[]",
|
|
2267
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
2268
|
+
"components": [
|
|
2269
|
+
{
|
|
2270
|
+
"name": "amount",
|
|
2271
|
+
"type": "uint224",
|
|
2272
|
+
"internalType": "uint224"
|
|
2273
|
+
},
|
|
2274
|
+
{
|
|
2275
|
+
"name": "currency",
|
|
2276
|
+
"type": "uint32",
|
|
2277
|
+
"internalType": "uint32"
|
|
2278
|
+
}
|
|
2279
|
+
]
|
|
2280
|
+
},
|
|
2281
|
+
{
|
|
2282
|
+
"name": "surplusAllowances",
|
|
2283
|
+
"type": "tuple[]",
|
|
2284
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
2285
|
+
"components": [
|
|
2286
|
+
{
|
|
2287
|
+
"name": "amount",
|
|
2288
|
+
"type": "uint224",
|
|
2289
|
+
"internalType": "uint224"
|
|
2290
|
+
},
|
|
2291
|
+
{
|
|
2292
|
+
"name": "currency",
|
|
2293
|
+
"type": "uint32",
|
|
2294
|
+
"internalType": "uint32"
|
|
2295
|
+
}
|
|
2296
|
+
]
|
|
2297
|
+
}
|
|
2298
|
+
]
|
|
2299
|
+
}
|
|
2300
|
+
]
|
|
2301
|
+
},
|
|
2302
|
+
{
|
|
2303
|
+
"name": "terminalConfigurations",
|
|
2304
|
+
"type": "tuple[]",
|
|
2305
|
+
"internalType": "struct JBTerminalConfig[]",
|
|
2306
|
+
"components": [
|
|
2307
|
+
{
|
|
2308
|
+
"name": "terminal",
|
|
2309
|
+
"type": "address",
|
|
2310
|
+
"internalType": "contract IJBTerminal"
|
|
2311
|
+
},
|
|
2312
|
+
{
|
|
2313
|
+
"name": "accountingContextsToAccept",
|
|
2314
|
+
"type": "tuple[]",
|
|
2315
|
+
"internalType": "struct JBAccountingContext[]",
|
|
2316
|
+
"components": [
|
|
2317
|
+
{
|
|
2318
|
+
"name": "token",
|
|
2319
|
+
"type": "address",
|
|
2320
|
+
"internalType": "address"
|
|
2321
|
+
},
|
|
2322
|
+
{
|
|
2323
|
+
"name": "decimals",
|
|
2324
|
+
"type": "uint8",
|
|
2325
|
+
"internalType": "uint8"
|
|
2326
|
+
},
|
|
2327
|
+
{
|
|
2328
|
+
"name": "currency",
|
|
2329
|
+
"type": "uint32",
|
|
2330
|
+
"internalType": "uint32"
|
|
2331
|
+
}
|
|
2332
|
+
]
|
|
2333
|
+
}
|
|
2334
|
+
]
|
|
2335
|
+
},
|
|
2336
|
+
{
|
|
2337
|
+
"name": "memo",
|
|
2338
|
+
"type": "string",
|
|
2339
|
+
"internalType": "string"
|
|
2340
|
+
}
|
|
2341
|
+
],
|
|
2342
|
+
"outputs": [
|
|
2343
|
+
{
|
|
2344
|
+
"name": "rulesetId",
|
|
2345
|
+
"type": "uint256",
|
|
2346
|
+
"internalType": "uint256"
|
|
2347
|
+
},
|
|
2348
|
+
{
|
|
2349
|
+
"name": "hook",
|
|
2350
|
+
"type": "address",
|
|
2351
|
+
"internalType": "contract IJB721TiersHook"
|
|
2352
|
+
}
|
|
2353
|
+
],
|
|
2354
|
+
"stateMutability": "nonpayable"
|
|
2355
|
+
},
|
|
2356
|
+
{
|
|
2357
|
+
"type": "function",
|
|
2358
|
+
"name": "onERC721Received",
|
|
2359
|
+
"inputs": [
|
|
2360
|
+
{
|
|
2361
|
+
"name": "",
|
|
2362
|
+
"type": "address",
|
|
2363
|
+
"internalType": "address"
|
|
2364
|
+
},
|
|
2365
|
+
{
|
|
2366
|
+
"name": "from",
|
|
2367
|
+
"type": "address",
|
|
2368
|
+
"internalType": "address"
|
|
2369
|
+
},
|
|
2370
|
+
{
|
|
2371
|
+
"name": "tokenId",
|
|
2372
|
+
"type": "uint256",
|
|
2373
|
+
"internalType": "uint256"
|
|
2374
|
+
},
|
|
2375
|
+
{
|
|
2376
|
+
"name": "",
|
|
2377
|
+
"type": "bytes",
|
|
2378
|
+
"internalType": "bytes"
|
|
2379
|
+
}
|
|
2380
|
+
],
|
|
2381
|
+
"outputs": [
|
|
2382
|
+
{
|
|
2383
|
+
"name": "",
|
|
2384
|
+
"type": "bytes4",
|
|
2385
|
+
"internalType": "bytes4"
|
|
2386
|
+
}
|
|
2387
|
+
],
|
|
2388
|
+
"stateMutability": "view"
|
|
2389
|
+
},
|
|
2390
|
+
{
|
|
2391
|
+
"type": "function",
|
|
2392
|
+
"name": "originalPayer",
|
|
2393
|
+
"inputs": [],
|
|
2394
|
+
"outputs": [
|
|
2395
|
+
{
|
|
2396
|
+
"name": "",
|
|
2397
|
+
"type": "address",
|
|
2398
|
+
"internalType": "address"
|
|
2399
|
+
}
|
|
2400
|
+
],
|
|
2401
|
+
"stateMutability": "view"
|
|
2402
|
+
},
|
|
2403
|
+
{
|
|
2404
|
+
"type": "function",
|
|
2405
|
+
"name": "peerChainAdjustedAccountsOf",
|
|
2406
|
+
"inputs": [
|
|
2407
|
+
{
|
|
2408
|
+
"name": "projectId",
|
|
2409
|
+
"type": "uint256",
|
|
2410
|
+
"internalType": "uint256"
|
|
2411
|
+
}
|
|
2412
|
+
],
|
|
2413
|
+
"outputs": [
|
|
2414
|
+
{
|
|
2415
|
+
"name": "supply",
|
|
2416
|
+
"type": "uint256",
|
|
2417
|
+
"internalType": "uint256"
|
|
2418
|
+
},
|
|
2419
|
+
{
|
|
2420
|
+
"name": "contexts",
|
|
2421
|
+
"type": "tuple[]",
|
|
2422
|
+
"internalType": "struct JBSourceContext[]",
|
|
2423
|
+
"components": [
|
|
2424
|
+
{
|
|
2425
|
+
"name": "token",
|
|
2426
|
+
"type": "bytes32",
|
|
2427
|
+
"internalType": "bytes32"
|
|
2428
|
+
},
|
|
2429
|
+
{
|
|
2430
|
+
"name": "decimals",
|
|
2431
|
+
"type": "uint8",
|
|
2432
|
+
"internalType": "uint8"
|
|
2433
|
+
},
|
|
2434
|
+
{
|
|
2435
|
+
"name": "surplus",
|
|
2436
|
+
"type": "uint128",
|
|
2437
|
+
"internalType": "uint128"
|
|
2438
|
+
},
|
|
2439
|
+
{
|
|
2440
|
+
"name": "balance",
|
|
2441
|
+
"type": "uint128",
|
|
2442
|
+
"internalType": "uint128"
|
|
2443
|
+
}
|
|
2444
|
+
]
|
|
2445
|
+
}
|
|
2446
|
+
],
|
|
2447
|
+
"stateMutability": "view"
|
|
2448
|
+
},
|
|
2449
|
+
{
|
|
2450
|
+
"type": "function",
|
|
2451
|
+
"name": "queueRulesetsOf",
|
|
2452
|
+
"inputs": [
|
|
2453
|
+
{
|
|
2454
|
+
"name": "projectId",
|
|
2455
|
+
"type": "uint256",
|
|
2456
|
+
"internalType": "uint256"
|
|
2457
|
+
},
|
|
2458
|
+
{
|
|
2459
|
+
"name": "rulesetConfigurations",
|
|
2460
|
+
"type": "tuple[]",
|
|
2461
|
+
"internalType": "struct JBRulesetConfig[]",
|
|
2462
|
+
"components": [
|
|
2463
|
+
{
|
|
2464
|
+
"name": "mustStartAtOrAfter",
|
|
2465
|
+
"type": "uint48",
|
|
2466
|
+
"internalType": "uint48"
|
|
2467
|
+
},
|
|
2468
|
+
{
|
|
2469
|
+
"name": "duration",
|
|
2470
|
+
"type": "uint32",
|
|
2471
|
+
"internalType": "uint32"
|
|
2472
|
+
},
|
|
2473
|
+
{
|
|
2474
|
+
"name": "weight",
|
|
2475
|
+
"type": "uint112",
|
|
2476
|
+
"internalType": "uint112"
|
|
2477
|
+
},
|
|
2478
|
+
{
|
|
2479
|
+
"name": "weightCutPercent",
|
|
2480
|
+
"type": "uint32",
|
|
2481
|
+
"internalType": "uint32"
|
|
2482
|
+
},
|
|
2483
|
+
{
|
|
2484
|
+
"name": "approvalHook",
|
|
2485
|
+
"type": "address",
|
|
2486
|
+
"internalType": "contract IJBRulesetApprovalHook"
|
|
2487
|
+
},
|
|
2488
|
+
{
|
|
2489
|
+
"name": "metadata",
|
|
2490
|
+
"type": "tuple",
|
|
2491
|
+
"internalType": "struct JBRulesetMetadata",
|
|
2492
|
+
"components": [
|
|
2493
|
+
{
|
|
2494
|
+
"name": "reservedPercent",
|
|
2495
|
+
"type": "uint16",
|
|
2496
|
+
"internalType": "uint16"
|
|
2497
|
+
},
|
|
2498
|
+
{
|
|
2499
|
+
"name": "cashOutTaxRate",
|
|
2500
|
+
"type": "uint16",
|
|
2501
|
+
"internalType": "uint16"
|
|
2502
|
+
},
|
|
2503
|
+
{
|
|
2504
|
+
"name": "baseCurrency",
|
|
2505
|
+
"type": "uint32",
|
|
2506
|
+
"internalType": "uint32"
|
|
2507
|
+
},
|
|
2508
|
+
{
|
|
2509
|
+
"name": "pausePay",
|
|
2510
|
+
"type": "bool",
|
|
2511
|
+
"internalType": "bool"
|
|
2512
|
+
},
|
|
2513
|
+
{
|
|
2514
|
+
"name": "pauseCreditTransfers",
|
|
2515
|
+
"type": "bool",
|
|
2516
|
+
"internalType": "bool"
|
|
2517
|
+
},
|
|
2518
|
+
{
|
|
2519
|
+
"name": "allowOwnerMinting",
|
|
2520
|
+
"type": "bool",
|
|
2521
|
+
"internalType": "bool"
|
|
2522
|
+
},
|
|
2523
|
+
{
|
|
2524
|
+
"name": "allowSetCustomToken",
|
|
2525
|
+
"type": "bool",
|
|
2526
|
+
"internalType": "bool"
|
|
2527
|
+
},
|
|
2528
|
+
{
|
|
2529
|
+
"name": "allowTerminalMigration",
|
|
2530
|
+
"type": "bool",
|
|
2531
|
+
"internalType": "bool"
|
|
2532
|
+
},
|
|
2533
|
+
{
|
|
2534
|
+
"name": "allowSetTerminals",
|
|
2535
|
+
"type": "bool",
|
|
2536
|
+
"internalType": "bool"
|
|
2537
|
+
},
|
|
2538
|
+
{
|
|
2539
|
+
"name": "allowSetController",
|
|
2540
|
+
"type": "bool",
|
|
2541
|
+
"internalType": "bool"
|
|
2542
|
+
},
|
|
2543
|
+
{
|
|
2544
|
+
"name": "allowAddAccountingContext",
|
|
2545
|
+
"type": "bool",
|
|
2546
|
+
"internalType": "bool"
|
|
2547
|
+
},
|
|
2548
|
+
{
|
|
2549
|
+
"name": "allowAddPriceFeed",
|
|
2550
|
+
"type": "bool",
|
|
2551
|
+
"internalType": "bool"
|
|
2552
|
+
},
|
|
2553
|
+
{
|
|
2554
|
+
"name": "ownerMustSendPayouts",
|
|
2555
|
+
"type": "bool",
|
|
2556
|
+
"internalType": "bool"
|
|
2557
|
+
},
|
|
2558
|
+
{
|
|
2559
|
+
"name": "holdFees",
|
|
2560
|
+
"type": "bool",
|
|
2561
|
+
"internalType": "bool"
|
|
2562
|
+
},
|
|
2563
|
+
{
|
|
2564
|
+
"name": "scopeCashOutsToLocalBalances",
|
|
2565
|
+
"type": "bool",
|
|
2566
|
+
"internalType": "bool"
|
|
2567
|
+
},
|
|
2568
|
+
{
|
|
2569
|
+
"name": "useDataHookForPay",
|
|
2570
|
+
"type": "bool",
|
|
2571
|
+
"internalType": "bool"
|
|
2572
|
+
},
|
|
2573
|
+
{
|
|
2574
|
+
"name": "useDataHookForCashOut",
|
|
2575
|
+
"type": "bool",
|
|
2576
|
+
"internalType": "bool"
|
|
2577
|
+
},
|
|
2578
|
+
{
|
|
2579
|
+
"name": "dataHook",
|
|
2580
|
+
"type": "address",
|
|
2581
|
+
"internalType": "address"
|
|
2582
|
+
},
|
|
2583
|
+
{
|
|
2584
|
+
"name": "metadata",
|
|
2585
|
+
"type": "uint16",
|
|
2586
|
+
"internalType": "uint16"
|
|
2587
|
+
}
|
|
2588
|
+
]
|
|
2589
|
+
},
|
|
2590
|
+
{
|
|
2591
|
+
"name": "splitGroups",
|
|
2592
|
+
"type": "tuple[]",
|
|
2593
|
+
"internalType": "struct JBSplitGroup[]",
|
|
2594
|
+
"components": [
|
|
2595
|
+
{
|
|
2596
|
+
"name": "groupId",
|
|
2597
|
+
"type": "uint256",
|
|
2598
|
+
"internalType": "uint256"
|
|
2599
|
+
},
|
|
2600
|
+
{
|
|
2601
|
+
"name": "splits",
|
|
2602
|
+
"type": "tuple[]",
|
|
2603
|
+
"internalType": "struct JBSplit[]",
|
|
2604
|
+
"components": [
|
|
2605
|
+
{
|
|
2606
|
+
"name": "percent",
|
|
2607
|
+
"type": "uint32",
|
|
2608
|
+
"internalType": "uint32"
|
|
2609
|
+
},
|
|
2610
|
+
{
|
|
2611
|
+
"name": "projectId",
|
|
2612
|
+
"type": "uint64",
|
|
2613
|
+
"internalType": "uint64"
|
|
2614
|
+
},
|
|
2615
|
+
{
|
|
2616
|
+
"name": "beneficiary",
|
|
2617
|
+
"type": "address",
|
|
2618
|
+
"internalType": "address payable"
|
|
2619
|
+
},
|
|
2620
|
+
{
|
|
2621
|
+
"name": "preferAddToBalance",
|
|
2622
|
+
"type": "bool",
|
|
2623
|
+
"internalType": "bool"
|
|
2624
|
+
},
|
|
2625
|
+
{
|
|
2626
|
+
"name": "lockedUntil",
|
|
2627
|
+
"type": "uint48",
|
|
2628
|
+
"internalType": "uint48"
|
|
2629
|
+
},
|
|
2630
|
+
{
|
|
2631
|
+
"name": "hook",
|
|
2632
|
+
"type": "address",
|
|
2633
|
+
"internalType": "contract IJBSplitHook"
|
|
2634
|
+
}
|
|
2635
|
+
]
|
|
2636
|
+
}
|
|
2637
|
+
]
|
|
2638
|
+
},
|
|
2639
|
+
{
|
|
2640
|
+
"name": "fundAccessLimitGroups",
|
|
2641
|
+
"type": "tuple[]",
|
|
2642
|
+
"internalType": "struct JBFundAccessLimitGroup[]",
|
|
2643
|
+
"components": [
|
|
2644
|
+
{
|
|
2645
|
+
"name": "terminal",
|
|
2646
|
+
"type": "address",
|
|
2647
|
+
"internalType": "address"
|
|
2648
|
+
},
|
|
2649
|
+
{
|
|
2650
|
+
"name": "token",
|
|
2651
|
+
"type": "address",
|
|
2652
|
+
"internalType": "address"
|
|
2653
|
+
},
|
|
2654
|
+
{
|
|
2655
|
+
"name": "payoutLimits",
|
|
2656
|
+
"type": "tuple[]",
|
|
2657
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
2658
|
+
"components": [
|
|
2659
|
+
{
|
|
2660
|
+
"name": "amount",
|
|
2661
|
+
"type": "uint224",
|
|
2662
|
+
"internalType": "uint224"
|
|
2663
|
+
},
|
|
2664
|
+
{
|
|
2665
|
+
"name": "currency",
|
|
2666
|
+
"type": "uint32",
|
|
2667
|
+
"internalType": "uint32"
|
|
2668
|
+
}
|
|
2669
|
+
]
|
|
2670
|
+
},
|
|
2671
|
+
{
|
|
2672
|
+
"name": "surplusAllowances",
|
|
2673
|
+
"type": "tuple[]",
|
|
2674
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
2675
|
+
"components": [
|
|
2676
|
+
{
|
|
2677
|
+
"name": "amount",
|
|
2678
|
+
"type": "uint224",
|
|
2679
|
+
"internalType": "uint224"
|
|
2680
|
+
},
|
|
2681
|
+
{
|
|
2682
|
+
"name": "currency",
|
|
2683
|
+
"type": "uint32",
|
|
2684
|
+
"internalType": "uint32"
|
|
2685
|
+
}
|
|
2686
|
+
]
|
|
2687
|
+
}
|
|
2688
|
+
]
|
|
2689
|
+
}
|
|
2690
|
+
]
|
|
2691
|
+
},
|
|
2692
|
+
{
|
|
2693
|
+
"name": "memo",
|
|
2694
|
+
"type": "string",
|
|
2695
|
+
"internalType": "string"
|
|
2696
|
+
}
|
|
2697
|
+
],
|
|
2698
|
+
"outputs": [
|
|
2699
|
+
{
|
|
2700
|
+
"name": "rulesetId",
|
|
2701
|
+
"type": "uint256",
|
|
2702
|
+
"internalType": "uint256"
|
|
2703
|
+
},
|
|
2704
|
+
{
|
|
2705
|
+
"name": "hook",
|
|
2706
|
+
"type": "address",
|
|
2707
|
+
"internalType": "contract IJB721TiersHook"
|
|
2708
|
+
}
|
|
2709
|
+
],
|
|
2710
|
+
"stateMutability": "nonpayable"
|
|
2711
|
+
},
|
|
2712
|
+
{
|
|
2713
|
+
"type": "function",
|
|
2714
|
+
"name": "queueRulesetsOf",
|
|
2715
|
+
"inputs": [
|
|
2716
|
+
{
|
|
2717
|
+
"name": "projectId",
|
|
2718
|
+
"type": "uint256",
|
|
2719
|
+
"internalType": "uint256"
|
|
2720
|
+
},
|
|
2721
|
+
{
|
|
2722
|
+
"name": "deploy721Config",
|
|
2723
|
+
"type": "tuple",
|
|
2724
|
+
"internalType": "struct JBOmnichain721Config",
|
|
2725
|
+
"components": [
|
|
2726
|
+
{
|
|
2727
|
+
"name": "deployTiersHookConfig",
|
|
2728
|
+
"type": "tuple",
|
|
2729
|
+
"internalType": "struct JBDeploy721TiersHookConfig",
|
|
2730
|
+
"components": [
|
|
2731
|
+
{
|
|
2732
|
+
"name": "name",
|
|
2733
|
+
"type": "string",
|
|
2734
|
+
"internalType": "string"
|
|
2735
|
+
},
|
|
2736
|
+
{
|
|
2737
|
+
"name": "symbol",
|
|
2738
|
+
"type": "string",
|
|
2739
|
+
"internalType": "string"
|
|
2740
|
+
},
|
|
2741
|
+
{
|
|
2742
|
+
"name": "baseUri",
|
|
2743
|
+
"type": "string",
|
|
2744
|
+
"internalType": "string"
|
|
2745
|
+
},
|
|
2746
|
+
{
|
|
2747
|
+
"name": "tokenUriResolver",
|
|
2748
|
+
"type": "address",
|
|
2749
|
+
"internalType": "contract IJB721TokenUriResolver"
|
|
2750
|
+
},
|
|
2751
|
+
{
|
|
2752
|
+
"name": "contractUri",
|
|
2753
|
+
"type": "string",
|
|
2754
|
+
"internalType": "string"
|
|
2755
|
+
},
|
|
2756
|
+
{
|
|
2757
|
+
"name": "tiersConfig",
|
|
2758
|
+
"type": "tuple",
|
|
2759
|
+
"internalType": "struct JB721InitTiersConfig",
|
|
2760
|
+
"components": [
|
|
2761
|
+
{
|
|
2762
|
+
"name": "tiers",
|
|
2763
|
+
"type": "tuple[]",
|
|
2764
|
+
"internalType": "struct JB721TierConfig[]",
|
|
2765
|
+
"components": [
|
|
2766
|
+
{
|
|
2767
|
+
"name": "price",
|
|
2768
|
+
"type": "uint104",
|
|
2769
|
+
"internalType": "uint104"
|
|
2770
|
+
},
|
|
2771
|
+
{
|
|
2772
|
+
"name": "initialSupply",
|
|
2773
|
+
"type": "uint32",
|
|
2774
|
+
"internalType": "uint32"
|
|
2775
|
+
},
|
|
2776
|
+
{
|
|
2777
|
+
"name": "votingUnits",
|
|
2778
|
+
"type": "uint32",
|
|
2779
|
+
"internalType": "uint32"
|
|
2780
|
+
},
|
|
2781
|
+
{
|
|
2782
|
+
"name": "reserveFrequency",
|
|
2783
|
+
"type": "uint16",
|
|
2784
|
+
"internalType": "uint16"
|
|
2785
|
+
},
|
|
2786
|
+
{
|
|
2787
|
+
"name": "reserveBeneficiary",
|
|
2788
|
+
"type": "address",
|
|
2789
|
+
"internalType": "address"
|
|
2790
|
+
},
|
|
2791
|
+
{
|
|
2792
|
+
"name": "encodedIpfsUri",
|
|
2793
|
+
"type": "bytes32",
|
|
2794
|
+
"internalType": "bytes32"
|
|
2795
|
+
},
|
|
2796
|
+
{
|
|
2797
|
+
"name": "category",
|
|
2798
|
+
"type": "uint24",
|
|
2799
|
+
"internalType": "uint24"
|
|
2800
|
+
},
|
|
2801
|
+
{
|
|
2802
|
+
"name": "discountPercent",
|
|
2803
|
+
"type": "uint8",
|
|
2804
|
+
"internalType": "uint8"
|
|
2805
|
+
},
|
|
2806
|
+
{
|
|
2807
|
+
"name": "flags",
|
|
2808
|
+
"type": "tuple",
|
|
2809
|
+
"internalType": "struct JB721TierConfigFlags",
|
|
2810
|
+
"components": [
|
|
2811
|
+
{
|
|
2812
|
+
"name": "allowOwnerMint",
|
|
2813
|
+
"type": "bool",
|
|
2814
|
+
"internalType": "bool"
|
|
2815
|
+
},
|
|
2816
|
+
{
|
|
2817
|
+
"name": "useReserveBeneficiaryAsDefault",
|
|
2818
|
+
"type": "bool",
|
|
2819
|
+
"internalType": "bool"
|
|
2820
|
+
},
|
|
2821
|
+
{
|
|
2822
|
+
"name": "transfersPausable",
|
|
2823
|
+
"type": "bool",
|
|
2824
|
+
"internalType": "bool"
|
|
2825
|
+
},
|
|
2826
|
+
{
|
|
2827
|
+
"name": "useVotingUnits",
|
|
2828
|
+
"type": "bool",
|
|
2829
|
+
"internalType": "bool"
|
|
2830
|
+
},
|
|
2831
|
+
{
|
|
2832
|
+
"name": "cantBeRemoved",
|
|
2833
|
+
"type": "bool",
|
|
2834
|
+
"internalType": "bool"
|
|
2835
|
+
},
|
|
2836
|
+
{
|
|
2837
|
+
"name": "cantIncreaseDiscountPercent",
|
|
2838
|
+
"type": "bool",
|
|
2839
|
+
"internalType": "bool"
|
|
2840
|
+
},
|
|
2841
|
+
{
|
|
2842
|
+
"name": "cantBuyWithCredits",
|
|
2843
|
+
"type": "bool",
|
|
2844
|
+
"internalType": "bool"
|
|
2845
|
+
}
|
|
2846
|
+
]
|
|
2847
|
+
},
|
|
2848
|
+
{
|
|
2849
|
+
"name": "splitPercent",
|
|
2850
|
+
"type": "uint32",
|
|
2851
|
+
"internalType": "uint32"
|
|
2852
|
+
},
|
|
2853
|
+
{
|
|
2854
|
+
"name": "splits",
|
|
2855
|
+
"type": "tuple[]",
|
|
2856
|
+
"internalType": "struct JBSplit[]",
|
|
2857
|
+
"components": [
|
|
2858
|
+
{
|
|
2859
|
+
"name": "percent",
|
|
2860
|
+
"type": "uint32",
|
|
2861
|
+
"internalType": "uint32"
|
|
2862
|
+
},
|
|
2863
|
+
{
|
|
2864
|
+
"name": "projectId",
|
|
2865
|
+
"type": "uint64",
|
|
2866
|
+
"internalType": "uint64"
|
|
2867
|
+
},
|
|
2868
|
+
{
|
|
2869
|
+
"name": "beneficiary",
|
|
2870
|
+
"type": "address",
|
|
2871
|
+
"internalType": "address payable"
|
|
2872
|
+
},
|
|
2873
|
+
{
|
|
2874
|
+
"name": "preferAddToBalance",
|
|
2875
|
+
"type": "bool",
|
|
2876
|
+
"internalType": "bool"
|
|
2877
|
+
},
|
|
2878
|
+
{
|
|
2879
|
+
"name": "lockedUntil",
|
|
2880
|
+
"type": "uint48",
|
|
2881
|
+
"internalType": "uint48"
|
|
2882
|
+
},
|
|
2883
|
+
{
|
|
2884
|
+
"name": "hook",
|
|
2885
|
+
"type": "address",
|
|
2886
|
+
"internalType": "contract IJBSplitHook"
|
|
2887
|
+
}
|
|
2888
|
+
]
|
|
2889
|
+
}
|
|
2890
|
+
]
|
|
2891
|
+
},
|
|
2892
|
+
{
|
|
2893
|
+
"name": "currency",
|
|
2894
|
+
"type": "uint32",
|
|
2895
|
+
"internalType": "uint32"
|
|
2896
|
+
},
|
|
2897
|
+
{
|
|
2898
|
+
"name": "decimals",
|
|
2899
|
+
"type": "uint8",
|
|
2900
|
+
"internalType": "uint8"
|
|
2901
|
+
}
|
|
2902
|
+
]
|
|
2903
|
+
},
|
|
2904
|
+
{
|
|
2905
|
+
"name": "flags",
|
|
2906
|
+
"type": "tuple",
|
|
2907
|
+
"internalType": "struct JB721TiersHookFlags",
|
|
2908
|
+
"components": [
|
|
2909
|
+
{
|
|
2910
|
+
"name": "noNewTiersWithReserves",
|
|
2911
|
+
"type": "bool",
|
|
2912
|
+
"internalType": "bool"
|
|
2913
|
+
},
|
|
2914
|
+
{
|
|
2915
|
+
"name": "noNewTiersWithVotes",
|
|
2916
|
+
"type": "bool",
|
|
2917
|
+
"internalType": "bool"
|
|
2918
|
+
},
|
|
2919
|
+
{
|
|
2920
|
+
"name": "noNewTiersWithOwnerMinting",
|
|
2921
|
+
"type": "bool",
|
|
2922
|
+
"internalType": "bool"
|
|
2923
|
+
},
|
|
2924
|
+
{
|
|
2925
|
+
"name": "preventOverspending",
|
|
2926
|
+
"type": "bool",
|
|
2927
|
+
"internalType": "bool"
|
|
2928
|
+
},
|
|
2929
|
+
{
|
|
2930
|
+
"name": "issueTokensForSplits",
|
|
2931
|
+
"type": "bool",
|
|
2932
|
+
"internalType": "bool"
|
|
2933
|
+
}
|
|
2934
|
+
]
|
|
2935
|
+
}
|
|
2936
|
+
]
|
|
2937
|
+
},
|
|
2938
|
+
{
|
|
2939
|
+
"name": "useDataHookForCashOut",
|
|
2940
|
+
"type": "bool",
|
|
2941
|
+
"internalType": "bool"
|
|
2942
|
+
},
|
|
2943
|
+
{
|
|
2944
|
+
"name": "salt",
|
|
2945
|
+
"type": "bytes32",
|
|
2946
|
+
"internalType": "bytes32"
|
|
2947
|
+
}
|
|
2948
|
+
]
|
|
2949
|
+
},
|
|
2950
|
+
{
|
|
2951
|
+
"name": "rulesetConfigurations",
|
|
2952
|
+
"type": "tuple[]",
|
|
2953
|
+
"internalType": "struct JBRulesetConfig[]",
|
|
2954
|
+
"components": [
|
|
2955
|
+
{
|
|
2956
|
+
"name": "mustStartAtOrAfter",
|
|
2957
|
+
"type": "uint48",
|
|
2958
|
+
"internalType": "uint48"
|
|
2959
|
+
},
|
|
2960
|
+
{
|
|
2961
|
+
"name": "duration",
|
|
2962
|
+
"type": "uint32",
|
|
2963
|
+
"internalType": "uint32"
|
|
2964
|
+
},
|
|
2965
|
+
{
|
|
2966
|
+
"name": "weight",
|
|
2967
|
+
"type": "uint112",
|
|
2968
|
+
"internalType": "uint112"
|
|
2969
|
+
},
|
|
2970
|
+
{
|
|
2971
|
+
"name": "weightCutPercent",
|
|
2972
|
+
"type": "uint32",
|
|
2973
|
+
"internalType": "uint32"
|
|
2974
|
+
},
|
|
2975
|
+
{
|
|
2976
|
+
"name": "approvalHook",
|
|
2977
|
+
"type": "address",
|
|
2978
|
+
"internalType": "contract IJBRulesetApprovalHook"
|
|
2979
|
+
},
|
|
2980
|
+
{
|
|
2981
|
+
"name": "metadata",
|
|
2982
|
+
"type": "tuple",
|
|
2983
|
+
"internalType": "struct JBRulesetMetadata",
|
|
2984
|
+
"components": [
|
|
2985
|
+
{
|
|
2986
|
+
"name": "reservedPercent",
|
|
2987
|
+
"type": "uint16",
|
|
2988
|
+
"internalType": "uint16"
|
|
2989
|
+
},
|
|
2990
|
+
{
|
|
2991
|
+
"name": "cashOutTaxRate",
|
|
2992
|
+
"type": "uint16",
|
|
2993
|
+
"internalType": "uint16"
|
|
2994
|
+
},
|
|
2995
|
+
{
|
|
2996
|
+
"name": "baseCurrency",
|
|
2997
|
+
"type": "uint32",
|
|
2998
|
+
"internalType": "uint32"
|
|
2999
|
+
},
|
|
3000
|
+
{
|
|
3001
|
+
"name": "pausePay",
|
|
3002
|
+
"type": "bool",
|
|
3003
|
+
"internalType": "bool"
|
|
3004
|
+
},
|
|
3005
|
+
{
|
|
3006
|
+
"name": "pauseCreditTransfers",
|
|
3007
|
+
"type": "bool",
|
|
3008
|
+
"internalType": "bool"
|
|
3009
|
+
},
|
|
3010
|
+
{
|
|
3011
|
+
"name": "allowOwnerMinting",
|
|
3012
|
+
"type": "bool",
|
|
3013
|
+
"internalType": "bool"
|
|
3014
|
+
},
|
|
3015
|
+
{
|
|
3016
|
+
"name": "allowSetCustomToken",
|
|
3017
|
+
"type": "bool",
|
|
3018
|
+
"internalType": "bool"
|
|
3019
|
+
},
|
|
3020
|
+
{
|
|
3021
|
+
"name": "allowTerminalMigration",
|
|
3022
|
+
"type": "bool",
|
|
3023
|
+
"internalType": "bool"
|
|
3024
|
+
},
|
|
3025
|
+
{
|
|
3026
|
+
"name": "allowSetTerminals",
|
|
3027
|
+
"type": "bool",
|
|
3028
|
+
"internalType": "bool"
|
|
3029
|
+
},
|
|
3030
|
+
{
|
|
3031
|
+
"name": "allowSetController",
|
|
3032
|
+
"type": "bool",
|
|
3033
|
+
"internalType": "bool"
|
|
3034
|
+
},
|
|
3035
|
+
{
|
|
3036
|
+
"name": "allowAddAccountingContext",
|
|
3037
|
+
"type": "bool",
|
|
3038
|
+
"internalType": "bool"
|
|
3039
|
+
},
|
|
3040
|
+
{
|
|
3041
|
+
"name": "allowAddPriceFeed",
|
|
3042
|
+
"type": "bool",
|
|
3043
|
+
"internalType": "bool"
|
|
3044
|
+
},
|
|
3045
|
+
{
|
|
3046
|
+
"name": "ownerMustSendPayouts",
|
|
3047
|
+
"type": "bool",
|
|
3048
|
+
"internalType": "bool"
|
|
3049
|
+
},
|
|
3050
|
+
{
|
|
3051
|
+
"name": "holdFees",
|
|
3052
|
+
"type": "bool",
|
|
3053
|
+
"internalType": "bool"
|
|
3054
|
+
},
|
|
3055
|
+
{
|
|
3056
|
+
"name": "scopeCashOutsToLocalBalances",
|
|
3057
|
+
"type": "bool",
|
|
3058
|
+
"internalType": "bool"
|
|
3059
|
+
},
|
|
3060
|
+
{
|
|
3061
|
+
"name": "useDataHookForPay",
|
|
3062
|
+
"type": "bool",
|
|
3063
|
+
"internalType": "bool"
|
|
3064
|
+
},
|
|
3065
|
+
{
|
|
3066
|
+
"name": "useDataHookForCashOut",
|
|
3067
|
+
"type": "bool",
|
|
3068
|
+
"internalType": "bool"
|
|
3069
|
+
},
|
|
3070
|
+
{
|
|
3071
|
+
"name": "dataHook",
|
|
3072
|
+
"type": "address",
|
|
3073
|
+
"internalType": "address"
|
|
3074
|
+
},
|
|
3075
|
+
{
|
|
3076
|
+
"name": "metadata",
|
|
3077
|
+
"type": "uint16",
|
|
3078
|
+
"internalType": "uint16"
|
|
3079
|
+
}
|
|
3080
|
+
]
|
|
3081
|
+
},
|
|
3082
|
+
{
|
|
3083
|
+
"name": "splitGroups",
|
|
3084
|
+
"type": "tuple[]",
|
|
3085
|
+
"internalType": "struct JBSplitGroup[]",
|
|
3086
|
+
"components": [
|
|
3087
|
+
{
|
|
3088
|
+
"name": "groupId",
|
|
3089
|
+
"type": "uint256",
|
|
3090
|
+
"internalType": "uint256"
|
|
3091
|
+
},
|
|
3092
|
+
{
|
|
3093
|
+
"name": "splits",
|
|
3094
|
+
"type": "tuple[]",
|
|
3095
|
+
"internalType": "struct JBSplit[]",
|
|
3096
|
+
"components": [
|
|
3097
|
+
{
|
|
3098
|
+
"name": "percent",
|
|
3099
|
+
"type": "uint32",
|
|
3100
|
+
"internalType": "uint32"
|
|
3101
|
+
},
|
|
3102
|
+
{
|
|
3103
|
+
"name": "projectId",
|
|
3104
|
+
"type": "uint64",
|
|
3105
|
+
"internalType": "uint64"
|
|
3106
|
+
},
|
|
3107
|
+
{
|
|
3108
|
+
"name": "beneficiary",
|
|
3109
|
+
"type": "address",
|
|
3110
|
+
"internalType": "address payable"
|
|
3111
|
+
},
|
|
3112
|
+
{
|
|
3113
|
+
"name": "preferAddToBalance",
|
|
3114
|
+
"type": "bool",
|
|
3115
|
+
"internalType": "bool"
|
|
3116
|
+
},
|
|
3117
|
+
{
|
|
3118
|
+
"name": "lockedUntil",
|
|
3119
|
+
"type": "uint48",
|
|
3120
|
+
"internalType": "uint48"
|
|
3121
|
+
},
|
|
3122
|
+
{
|
|
3123
|
+
"name": "hook",
|
|
3124
|
+
"type": "address",
|
|
3125
|
+
"internalType": "contract IJBSplitHook"
|
|
3126
|
+
}
|
|
3127
|
+
]
|
|
3128
|
+
}
|
|
3129
|
+
]
|
|
3130
|
+
},
|
|
3131
|
+
{
|
|
3132
|
+
"name": "fundAccessLimitGroups",
|
|
3133
|
+
"type": "tuple[]",
|
|
3134
|
+
"internalType": "struct JBFundAccessLimitGroup[]",
|
|
3135
|
+
"components": [
|
|
3136
|
+
{
|
|
3137
|
+
"name": "terminal",
|
|
3138
|
+
"type": "address",
|
|
3139
|
+
"internalType": "address"
|
|
3140
|
+
},
|
|
3141
|
+
{
|
|
3142
|
+
"name": "token",
|
|
3143
|
+
"type": "address",
|
|
3144
|
+
"internalType": "address"
|
|
3145
|
+
},
|
|
3146
|
+
{
|
|
3147
|
+
"name": "payoutLimits",
|
|
3148
|
+
"type": "tuple[]",
|
|
3149
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
3150
|
+
"components": [
|
|
3151
|
+
{
|
|
3152
|
+
"name": "amount",
|
|
3153
|
+
"type": "uint224",
|
|
3154
|
+
"internalType": "uint224"
|
|
3155
|
+
},
|
|
3156
|
+
{
|
|
3157
|
+
"name": "currency",
|
|
3158
|
+
"type": "uint32",
|
|
3159
|
+
"internalType": "uint32"
|
|
3160
|
+
}
|
|
3161
|
+
]
|
|
3162
|
+
},
|
|
3163
|
+
{
|
|
3164
|
+
"name": "surplusAllowances",
|
|
3165
|
+
"type": "tuple[]",
|
|
3166
|
+
"internalType": "struct JBCurrencyAmount[]",
|
|
3167
|
+
"components": [
|
|
3168
|
+
{
|
|
3169
|
+
"name": "amount",
|
|
3170
|
+
"type": "uint224",
|
|
3171
|
+
"internalType": "uint224"
|
|
3172
|
+
},
|
|
3173
|
+
{
|
|
3174
|
+
"name": "currency",
|
|
3175
|
+
"type": "uint32",
|
|
3176
|
+
"internalType": "uint32"
|
|
3177
|
+
}
|
|
3178
|
+
]
|
|
3179
|
+
}
|
|
3180
|
+
]
|
|
3181
|
+
}
|
|
3182
|
+
]
|
|
3183
|
+
},
|
|
3184
|
+
{
|
|
3185
|
+
"name": "memo",
|
|
3186
|
+
"type": "string",
|
|
3187
|
+
"internalType": "string"
|
|
3188
|
+
}
|
|
3189
|
+
],
|
|
3190
|
+
"outputs": [
|
|
3191
|
+
{
|
|
3192
|
+
"name": "rulesetId",
|
|
3193
|
+
"type": "uint256",
|
|
3194
|
+
"internalType": "uint256"
|
|
3195
|
+
},
|
|
3196
|
+
{
|
|
3197
|
+
"name": "hook",
|
|
3198
|
+
"type": "address",
|
|
3199
|
+
"internalType": "contract IJB721TiersHook"
|
|
3200
|
+
}
|
|
3201
|
+
],
|
|
3202
|
+
"stateMutability": "nonpayable"
|
|
3203
|
+
},
|
|
3204
|
+
{
|
|
3205
|
+
"type": "function",
|
|
3206
|
+
"name": "supportsInterface",
|
|
3207
|
+
"inputs": [
|
|
3208
|
+
{
|
|
3209
|
+
"name": "interfaceId",
|
|
3210
|
+
"type": "bytes4",
|
|
3211
|
+
"internalType": "bytes4"
|
|
3212
|
+
}
|
|
3213
|
+
],
|
|
3214
|
+
"outputs": [
|
|
3215
|
+
{
|
|
3216
|
+
"name": "flag",
|
|
3217
|
+
"type": "bool",
|
|
3218
|
+
"internalType": "bool"
|
|
3219
|
+
}
|
|
3220
|
+
],
|
|
3221
|
+
"stateMutability": "view"
|
|
3222
|
+
},
|
|
3223
|
+
{
|
|
3224
|
+
"type": "function",
|
|
3225
|
+
"name": "tiered721HookOf",
|
|
3226
|
+
"inputs": [
|
|
3227
|
+
{
|
|
3228
|
+
"name": "projectId",
|
|
3229
|
+
"type": "uint256",
|
|
3230
|
+
"internalType": "uint256"
|
|
3231
|
+
},
|
|
3232
|
+
{
|
|
3233
|
+
"name": "rulesetId",
|
|
3234
|
+
"type": "uint256",
|
|
3235
|
+
"internalType": "uint256"
|
|
3236
|
+
}
|
|
3237
|
+
],
|
|
3238
|
+
"outputs": [
|
|
3239
|
+
{
|
|
3240
|
+
"name": "hook",
|
|
3241
|
+
"type": "address",
|
|
3242
|
+
"internalType": "contract IJB721TiersHook"
|
|
3243
|
+
},
|
|
3244
|
+
{
|
|
3245
|
+
"name": "useDataHookForCashOut",
|
|
3246
|
+
"type": "bool",
|
|
3247
|
+
"internalType": "bool"
|
|
3248
|
+
}
|
|
3249
|
+
],
|
|
3250
|
+
"stateMutability": "view"
|
|
3251
|
+
},
|
|
3252
|
+
{
|
|
3253
|
+
"type": "function",
|
|
3254
|
+
"name": "trustedForwarder",
|
|
3255
|
+
"inputs": [],
|
|
3256
|
+
"outputs": [
|
|
3257
|
+
{
|
|
3258
|
+
"name": "",
|
|
3259
|
+
"type": "address",
|
|
3260
|
+
"internalType": "address"
|
|
3261
|
+
}
|
|
3262
|
+
],
|
|
3263
|
+
"stateMutability": "view"
|
|
3264
|
+
},
|
|
3265
|
+
{
|
|
3266
|
+
"type": "error",
|
|
3267
|
+
"name": "JBOmnichainDeployer_ControllerMismatch",
|
|
3268
|
+
"inputs": [
|
|
3269
|
+
{
|
|
3270
|
+
"name": "projectId",
|
|
3271
|
+
"type": "uint256",
|
|
3272
|
+
"internalType": "uint256"
|
|
3273
|
+
},
|
|
3274
|
+
{
|
|
3275
|
+
"name": "expectedController",
|
|
3276
|
+
"type": "address",
|
|
3277
|
+
"internalType": "address"
|
|
3278
|
+
},
|
|
3279
|
+
{
|
|
3280
|
+
"name": "actualController",
|
|
3281
|
+
"type": "address",
|
|
3282
|
+
"internalType": "address"
|
|
3283
|
+
}
|
|
3284
|
+
]
|
|
3285
|
+
},
|
|
3286
|
+
{
|
|
3287
|
+
"type": "error",
|
|
3288
|
+
"name": "JBOmnichainDeployer_InvalidHook",
|
|
3289
|
+
"inputs": [
|
|
3290
|
+
{
|
|
3291
|
+
"name": "hook",
|
|
3292
|
+
"type": "address",
|
|
3293
|
+
"internalType": "address"
|
|
3294
|
+
},
|
|
3295
|
+
{
|
|
3296
|
+
"name": "projectId",
|
|
3297
|
+
"type": "uint256",
|
|
3298
|
+
"internalType": "uint256"
|
|
3299
|
+
},
|
|
3300
|
+
{
|
|
3301
|
+
"name": "rulesetId",
|
|
3302
|
+
"type": "uint256",
|
|
3303
|
+
"internalType": "uint256"
|
|
3304
|
+
}
|
|
3305
|
+
]
|
|
3306
|
+
},
|
|
3307
|
+
{
|
|
3308
|
+
"type": "error",
|
|
3309
|
+
"name": "JBOmnichainDeployer_NoRulesetConfigurations",
|
|
3310
|
+
"inputs": [
|
|
3311
|
+
{
|
|
3312
|
+
"name": "rulesetConfigurationCount",
|
|
3313
|
+
"type": "uint256",
|
|
3314
|
+
"internalType": "uint256"
|
|
3315
|
+
}
|
|
3316
|
+
]
|
|
3317
|
+
},
|
|
3318
|
+
{
|
|
3319
|
+
"type": "error",
|
|
3320
|
+
"name": "JBOmnichainDeployer_RulesetIdsUnpredictable",
|
|
3321
|
+
"inputs": [
|
|
3322
|
+
{
|
|
3323
|
+
"name": "projectId",
|
|
3324
|
+
"type": "uint256",
|
|
3325
|
+
"internalType": "uint256"
|
|
3326
|
+
},
|
|
3327
|
+
{
|
|
3328
|
+
"name": "latestRulesetId",
|
|
3329
|
+
"type": "uint256",
|
|
3330
|
+
"internalType": "uint256"
|
|
3331
|
+
},
|
|
3332
|
+
{
|
|
3333
|
+
"name": "currentTimestamp",
|
|
3334
|
+
"type": "uint256",
|
|
3335
|
+
"internalType": "uint256"
|
|
3336
|
+
}
|
|
3337
|
+
]
|
|
3338
|
+
},
|
|
3339
|
+
{
|
|
3340
|
+
"type": "error",
|
|
3341
|
+
"name": "JBOmnichainDeployer_UnexpectedNFTReceived",
|
|
3342
|
+
"inputs": [
|
|
3343
|
+
{
|
|
3344
|
+
"name": "caller",
|
|
3345
|
+
"type": "address",
|
|
3346
|
+
"internalType": "address"
|
|
3347
|
+
},
|
|
3348
|
+
{
|
|
3349
|
+
"name": "from",
|
|
3350
|
+
"type": "address",
|
|
3351
|
+
"internalType": "address"
|
|
3352
|
+
},
|
|
3353
|
+
{
|
|
3354
|
+
"name": "tokenId",
|
|
3355
|
+
"type": "uint256",
|
|
3356
|
+
"internalType": "uint256"
|
|
3357
|
+
}
|
|
3358
|
+
]
|
|
3359
|
+
},
|
|
3360
|
+
{
|
|
3361
|
+
"type": "error",
|
|
3362
|
+
"name": "JBPermissioned_Unauthorized",
|
|
3363
|
+
"inputs": [
|
|
3364
|
+
{
|
|
3365
|
+
"name": "account",
|
|
3366
|
+
"type": "address",
|
|
3367
|
+
"internalType": "address"
|
|
3368
|
+
},
|
|
3369
|
+
{
|
|
3370
|
+
"name": "sender",
|
|
3371
|
+
"type": "address",
|
|
3372
|
+
"internalType": "address"
|
|
3373
|
+
},
|
|
3374
|
+
{
|
|
3375
|
+
"name": "projectId",
|
|
3376
|
+
"type": "uint256",
|
|
3377
|
+
"internalType": "uint256"
|
|
3378
|
+
},
|
|
3379
|
+
{
|
|
3380
|
+
"name": "permissionId",
|
|
3381
|
+
"type": "uint256",
|
|
3382
|
+
"internalType": "uint256"
|
|
3383
|
+
}
|
|
3384
|
+
]
|
|
3385
|
+
},
|
|
3386
|
+
{
|
|
3387
|
+
"type": "error",
|
|
3388
|
+
"name": "PRBMath_MulDiv_Overflow",
|
|
3389
|
+
"inputs": [
|
|
3390
|
+
{
|
|
3391
|
+
"name": "x",
|
|
3392
|
+
"type": "uint256",
|
|
3393
|
+
"internalType": "uint256"
|
|
3394
|
+
},
|
|
3395
|
+
{
|
|
3396
|
+
"name": "y",
|
|
3397
|
+
"type": "uint256",
|
|
3398
|
+
"internalType": "uint256"
|
|
3399
|
+
},
|
|
3400
|
+
{
|
|
3401
|
+
"name": "denominator",
|
|
3402
|
+
"type": "uint256",
|
|
3403
|
+
"internalType": "uint256"
|
|
3404
|
+
}
|
|
3405
|
+
]
|
|
3406
|
+
}
|
|
3407
|
+
],
|
|
3408
|
+
"args": [
|
|
3409
|
+
"0x7903a854aE91eAf635430D120a1a434085cEf297",
|
|
3410
|
+
"0xb7B8EC35e2dd84afff04Ee769C6189e7A4d44A78",
|
|
3411
|
+
"0xf92AC1aB5A00033E35a3975739124F61928C36B0",
|
|
3412
|
+
"0x3Fcec3572e84b624477BcfF4E2CF1f7dEAb648F1",
|
|
3413
|
+
"0x3bA60b60933916a7C87D0860DcEE62a0CE34E3e2"
|
|
3414
|
+
],
|
|
3415
|
+
"solcInputHash": "9a3e5010f6c6a02ca2f8c85694eb3be2",
|
|
3416
|
+
"receipt": {
|
|
3417
|
+
"blockHash": "0x3a359e312e0f710529b52a9a474579db8169bca45ccaf9992eebb31e2479cbb9",
|
|
3418
|
+
"blockNumber": "0x1c43515e",
|
|
3419
|
+
"contractAddress": null,
|
|
3420
|
+
"cumulativeGasUsed": "0x529da5",
|
|
3421
|
+
"effectiveGasPrice": "0x1312d00",
|
|
3422
|
+
"from": "0x755ff2f75a0a586ecfa2b9a3c959cb662458a105",
|
|
3423
|
+
"gasUsed": "0x506a38",
|
|
3424
|
+
"gasUsedForL1": "0x229c",
|
|
3425
|
+
"l1BlockNumber": "0x182884e",
|
|
3426
|
+
"logs": [
|
|
3427
|
+
{
|
|
3428
|
+
"address": "0xa2ea7657440875bf916cbfc0cfa88f13e38ad463",
|
|
3429
|
+
"topics": [
|
|
3430
|
+
"0x572f161235911da04685a68c06adf558fc7e4a36909dca394650e0adc19cc93d",
|
|
3431
|
+
"0x000000000000000000000000755ff2f75a0a586ecfa2b9a3c959cb662458a105",
|
|
3432
|
+
"0x00000000000000000000000091f164e1300f13beaf77358e4d84ed78f8e99d38",
|
|
3433
|
+
"0x2771254a38489db73ad054450b912f8183e7459cba5d2f80c59612d1885c7c88"
|
|
3434
|
+
],
|
|
3435
|
+
"data": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
3436
|
+
"blockNumber": "0x1c43515e",
|
|
3437
|
+
"transactionHash": "0x18f6507ad8145fc927a6540b0e8154643e680cf4a956d3b192a20fe92967def2",
|
|
3438
|
+
"transactionIndex": "0x2",
|
|
3439
|
+
"blockHash": "0x3a359e312e0f710529b52a9a474579db8169bca45ccaf9992eebb31e2479cbb9",
|
|
3440
|
+
"blockTimestamp": "0x6a31919e",
|
|
3441
|
+
"logIndex": "0x4",
|
|
3442
|
+
"removed": false
|
|
3443
|
+
},
|
|
3444
|
+
{
|
|
3445
|
+
"address": "0xf92ac1ab5a00033e35a3975739124f61928c36b0",
|
|
3446
|
+
"topics": [
|
|
3447
|
+
"0x5324a861114a736770617a7dad3321b8417dc39698b30adfade6d0367b2e5d59",
|
|
3448
|
+
"0x0000000000000000000000007903a854ae91eaf635430d120a1a434085cef297",
|
|
3449
|
+
"0x000000000000000000000000b853758a70a6b4216c09f1d071ea2344aba0a34f",
|
|
3450
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000"
|
|
3451
|
+
],
|
|
3452
|
+
"data": "0x00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000100000000000000000000000000000000b853758a70a6b4216c09f1d071ea2344aba0a34f00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020",
|
|
3453
|
+
"blockNumber": "0x1c43515e",
|
|
3454
|
+
"transactionHash": "0x18f6507ad8145fc927a6540b0e8154643e680cf4a956d3b192a20fe92967def2",
|
|
3455
|
+
"transactionIndex": "0x2",
|
|
3456
|
+
"blockHash": "0x3a359e312e0f710529b52a9a474579db8169bca45ccaf9992eebb31e2479cbb9",
|
|
3457
|
+
"blockTimestamp": "0x6a31919e",
|
|
3458
|
+
"logIndex": "0x5",
|
|
3459
|
+
"removed": false
|
|
3460
|
+
},
|
|
3461
|
+
{
|
|
3462
|
+
"address": "0x4dc161ef837ff1c4485b08ddfcdb182f2157be18",
|
|
3463
|
+
"topics": [
|
|
3464
|
+
"0x6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb8",
|
|
3465
|
+
"0x00000000000000000000000091f164e1300f13beaf77358e4d84ed78f8e99d38"
|
|
3466
|
+
],
|
|
3467
|
+
"data": "0x",
|
|
3468
|
+
"blockNumber": "0x1c43515e",
|
|
3469
|
+
"transactionHash": "0x18f6507ad8145fc927a6540b0e8154643e680cf4a956d3b192a20fe92967def2",
|
|
3470
|
+
"transactionIndex": "0x2",
|
|
3471
|
+
"blockHash": "0x3a359e312e0f710529b52a9a474579db8169bca45ccaf9992eebb31e2479cbb9",
|
|
3472
|
+
"blockTimestamp": "0x6a31919e",
|
|
3473
|
+
"logIndex": "0x6",
|
|
3474
|
+
"removed": false
|
|
3475
|
+
},
|
|
3476
|
+
{
|
|
3477
|
+
"address": "0x91f164e1300f13beaf77358e4d84ed78f8e99d38",
|
|
3478
|
+
"topics": [
|
|
3479
|
+
"0xa65fb05c5808f5f389d72edeaf719ce38f4cc55c1f69ca3cbfb31c21501caa07",
|
|
3480
|
+
"0x7121bdb5da6ff5e4ab87d465ed70caab6b1014022975d109ade9af46634578d5"
|
|
3481
|
+
],
|
|
3482
|
+
"data": "0x0000000000000000000000000000000000000000000000000000000000000058",
|
|
3483
|
+
"blockNumber": "0x1c43515e",
|
|
3484
|
+
"transactionHash": "0x18f6507ad8145fc927a6540b0e8154643e680cf4a956d3b192a20fe92967def2",
|
|
3485
|
+
"transactionIndex": "0x2",
|
|
3486
|
+
"blockHash": "0x3a359e312e0f710529b52a9a474579db8169bca45ccaf9992eebb31e2479cbb9",
|
|
3487
|
+
"blockTimestamp": "0x6a31919e",
|
|
3488
|
+
"logIndex": "0x7",
|
|
3489
|
+
"removed": false
|
|
3490
|
+
}
|
|
3491
|
+
],
|
|
3492
|
+
"logsBloom": "0x00000000000010000000000000080000005000000000000000000000000000004000000000000000000000000040000010000000000000000000000000000000000100000000200000000000000000000000000002000040000000000000000040000000020000800000000000000800000000008020000000000000000080008800000000000008000104000000000000000000000100000000000000000000004000040000000080000000000000002200000000040800000000000004000000000002008000000000000000400000000000000000000000000000800020000000002000000900000800000000000210000000000080000040000000000000",
|
|
3493
|
+
"status": "0x1",
|
|
3494
|
+
"timeboosted": false,
|
|
3495
|
+
"to": "0xa2ea7657440875bf916cbfc0cfa88f13e38ad463",
|
|
3496
|
+
"transactionHash": "0x18f6507ad8145fc927a6540b0e8154643e680cf4a956d3b192a20fe92967def2",
|
|
3497
|
+
"transactionIndex": "0x2",
|
|
3498
|
+
"type": "0x2"
|
|
3499
|
+
},
|
|
3500
|
+
"bytecode": "0x61016080604052346103335760a081615be9803803809161002082856103f7565b8339810103126103335780516001600160a01b0381168103610333576020820151906001600160a01b03821682036103335760408301516001600160a01b03811681036103335760608401516001600160a01b0381169490919085830361033357608001516001600160a01b03811681036103335760805260a05260c05260405163293c499960e01b8152602081600481875afa9081156103a1575f916103ac575b506101205261014052610100526040516388bc2ef360e01b815290602090829060049082905afa9081156103a1575f9161035f575b5060e0526040805161010982826103f7565b6001815260208101601f19830136823781511561034b576020905261014051825191906001600160a01b0316606083016001600160401b03811184821017610337578452825260208201915f835283810191825260018060a01b0360a0511691823b15610333578451631127c92960e21b81523060048201526024810186905291516001600160a01b0316604483015292516001600160401b03166064820152915160606084840152805160a48401819052839160c48301916020909101905f5b8181106103175750505091815f81819503925af1801561030d576102fd575b50516157ce908161041b823960805181818161072d01528181610b920152615793015260a051818181610227015281816109dd0152818161463e0152818161496301528181614a4701528181614b2b0152614cc1015260c05181818161026b01528181612b9c01528181613cac015281816140e60152818161482e015281816150a9015261519f015260e0518181816106e90152818161505e0152615158015261010051818181610418015261536e01526101205181818161080f01528181610ebb01528181610f3d01528181613c0e01528181613d3f01528181613da6015281816140700152614721015261014051818181610346015281816108f50152818161281101528181612f7a0152613e650152f35b5f610307916103f7565b5f6101e9565b82513d5f823e3d90fd5b825160ff168452869450602093840193909201916001016101ca565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b90506020813d602011610399575b8161037a602093836103f7565b8101031261033357516001600160a01b0381168103610333575f6100f7565b3d915061036d565b6040513d5f823e3d90fd5b90506020939193813d6020116103ef575b816103ca602093836103f7565b810103126103335751916001600160a01b0383168303610333579092909160046100c2565b3d91506103bd565b601f909101601f19168101906001600160401b038211908210176103375760405256fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610fa957508063150b7a0214610eea578063293c499914610ea6578063296eee5114610e815780632d99317314610d915780633141db7014610d2c57806338945b5814610c835780634509224414610bc6578063572b6c0514610b72578063670d99be14610a90578063673706e8146107bb5780636a19a70f1461075c5780637da0a8771461071857806388bc2ef3146106d45780638cc35846146105fb57806394e1cf571461055e57806399f6d77f14610447578063abf8c5c814610403578063b0401dab14610375578063b5d2553314610331578063b64ce2c31461029a578063ee0fc12114610256578063f434c914146102125763f672acac14610124575f80fd5b3461020e57602036600319011261020e576004356001600160401b03811161020e576101c0600319823603011261020e5761016190600401612f70565b91939060405194859460a0860193865260208601526040850152606084015260a06080840152815180915260c0830190602060c08260051b8601019301915f905b8282106101b157505050500390f35b919360019193955060206101fe819260bf198a8203018652608060608a51878060a01b03815116845285810151151586850152604081015160408501520151918160608201520190611d0b565b96019201920185949391926101a2565b5f80fd5b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e57602036600319011261020e576102b6600435612b7f565b90604051918291604083019083526040602084015281518091526020606084019201905f5b8181106102e9575050500390f35b91935091602060806001926001600160801b03606088518051845260ff86820151168685015282604082015116604085015201511660608201520194019101918493926102db565b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e5761038336611cf5565b905f60408051610392816110fe565b82815282602082015201525f525f60205260405f20905f52602052606060405f20604051906103c0826110fe565b5460018060a01b0381169182815260ff60406020830192828560a01c1615158452019260a81c161515825260405192835251151560208301525115156040820152f35b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e5761016036600319011261020e5761012036602319011261020e57604051610472816110e2565b60243565ffffffffffff8116810361020e57815260443565ffffffffffff8116810361020e57602082015260643565ffffffffffff8116810361020e57604082015260843565ffffffffffff8116810361020e57606082015260a43563ffffffff8116810361020e57608082015260c4356001600160701b038116810361020e5760a082015260e43563ffffffff8116810361020e5760c0820152610104356001600160a01b038116810361020e5760e08201526101243561010082015261014435906001600160a01b038216820361020e57602091610554916004356127de565b6040519015158152f35b3461020e57608036600319011261020e576024356001600160401b03811161020e5761058e90369060040161191c565b6044356001600160401b03811161020e576105ad9036906004016113b8565b606435916001600160401b03831161020e576105d06105db933690600401611086565b92909160043561404a565b604080519283526001600160a01b039091166020830152819081015b0390f35b3461020e57602036600319011261020e576004356001600160401b03811161020e57610180600319823603011261020e5761063890600401612211565b90604051918291604083019083526040602084015281518091526060830190602060608260051b8601019301915f905b82821061067757505050500390f35b919360019193955060206106c48192605f198a8203018652608060608a51878060a01b03815116845285810151151586850152604081015160408501520151918160608201520190611d0b565b9601920192018594939192610668565b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e5761076a36611cf5565b905f52600160205260405f20905f526020526040805f20602082519161078f836110b3565b546001600160a01b03811680845260a09190911c60ff1615159190920181905282519182526020820152f35b3461020e57604036600319011261020e576024356004356001600160401b03821161020e5781600401906040600319843603011261020e576040516331a9108f60e11b8152600481018290526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91610a56575b50610850615768565b6001600160a01b038281169116808214158061099d575b610972576108f05f86866108d28a61088084848b614bde565b6108ba6108c861088e615768565b6040805160249590950135602086019081526001600160a01b0390921690850152929182906060820190565b03601f1981018352826111a2565b5190209280611d43565b604051639d7f900160e01b8152958694859491939160048601611e2d565b0381837f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af18015610967576105f7915f91610945575b50604051918291602083526020830190611848565b61096191503d805f833e61095981836111a2565b810190611d78565b82610930565b6040513d5f823e3d90fd5b908360849260405192631326f75560e11b845260048401526024830152604482015260216064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018590526021606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91610a1c575b5015610867565b90506020813d602011610a4e575b81610a37602093836111a2565b8101031261020e57610a4890611f62565b87610a15565b3d9150610a2a565b90506020813d602011610a88575b81610a71602093836111a2565b8101031261020e57610a8290611d2f565b84610847565b3d9150610a64565b60c036600319011261020e57610aa461105c565b6024356001600160401b03811161020e57610ac3903690600401611086565b91906044356001600160401b03811161020e57610ae49036906004016113b8565b6064356001600160401b03811161020e57610b03903690600401611818565b6084929192356001600160401b03811161020e57610b25903690600401611086565b93909260a435966001600160401b03881161020e576040600319893603011261020e576105f798610b639860040197610b5d84613f4e565b92613bbd565b60409391935193849384611884565b3461020e57602036600319011261020e576020610b8d61105c565b6040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169216919091148152f35b3461020e5760c036600319011261020e576024356001600160401b03811161020e57610bf6903690600401611086565b6044356001600160401b03811161020e57610c1590369060040161191c565b916064356001600160401b03811161020e57610c359036906004016113b8565b6084356001600160401b03811161020e57610c54903690600401611818565b9160a435956001600160401b03871161020e57610c786105db973690600401611086565b9690956004356146f1565b3461020e5760a036600319011261020e576024356001600160401b03811161020e57610cb3903690600401611086565b906044356001600160401b03811161020e57610cd39036906004016113b8565b916064356001600160401b03811161020e57610cf3903690600401611818565b90608435946001600160401b03861161020e57610d176105db963690600401611086565b959094610d2383613f4e565b916004356146f1565b3461020e57606036600319011261020e576024356001600160401b03811161020e57610d5c9036906004016113b8565b604435906001600160401b03821161020e57610d7f6105db923690600401611086565b91610d8981613f4e565b60043561404a565b60e036600319011261020e57610da561105c565b6024356001600160401b03811161020e57610dc4903690600401611086565b9091604435906001600160401b03821161020e576060600319833603011261020e576064356001600160401b03811161020e57610e059036906004016113b8565b906084356001600160401b03811161020e57610e25903690600401611818565b9060a4356001600160401b03811161020e57610e45903690600401611086565b94909360c435976001600160401b03891161020e5760406003198a3603011261020e576105f799610b5d610b639a60040199369060040161191c565b3461020e575f36600319011261020e576040515f5c6001600160a01b03168152602090f35b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e57608036600319011261020e57610f0361105c565b506024356001600160a01b0381169081900361020e576064356001600160401b03811161020e57610f38903690600401611086565b5050337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614801590610fa0575b610f8457604051630a85bd0160e11b8152602090f35b6388470c7960e01b5f523360045260245260443560445260645ffd5b50801515610f6e565b3461020e57602036600319011261020e576004359063ffffffff60e01b821680920361020e5760209163c1c8b89b60e01b811490811561104b575b811561103a575b8115611029575b8115611018575b8115611007575b5015158152f35b6301ffc9a760e01b14905083611000565b630a85bd0160e11b81149150610ff9565b63296eee5160e01b81149150610ff2565b63b64ce2c360e01b81149150610feb565b63e347239560e01b81149150610fe4565b600435906001600160a01b038216820361020e57565b35906001600160a01b038216820361020e57565b9181601f8401121561020e578235916001600160401b03831161020e576020838186019501011161020e57565b604081019081106001600160401b038211176110ce57604052565b634e487b7160e01b5f52604160045260245ffd5b61012081019081106001600160401b038211176110ce57604052565b606081019081106001600160401b038211176110ce57604052565b61026081019081106001600160401b038211176110ce57604052565b608081019081106001600160401b038211176110ce57604052565b60e081019081106001600160401b038211176110ce57604052565b61016081019081106001600160401b038211176110ce57604052565b60a081019081106001600160401b038211176110ce57604052565b90601f801991011681019081106001600160401b038211176110ce57604052565b6001600160401b0381116110ce5760051b60200190565b359065ffffffffffff8216820361020e57565b359063ffffffff8216820361020e57565b359061ffff8216820361020e57565b3590811515820361020e57565b81601f8201121561020e57803590611231826111c3565b9261123f60405194856111a2565b828452602060c081860194028301019181831161020e57602001925b828410611269575050505090565b60c08483031261020e576040519060c082018281106001600160401b038211176110ce57604052611299856111ed565b825260208501356001600160401b038116810361020e57602083015260408501356001600160a01b038116810361020e5760408301526112db6060860161120d565b60608301526112ec608086016111da565b608083015260a0850135906001600160a01b038216820361020e578260209260a060c095015281520193019261125b565b81601f8201121561020e57803590611334826111c3565b9261134260405194856111a2565b82845260208085019360061b8301019181831161020e57602001925b82841061136c575050505090565b60408483031261020e5760405190611383826110b3565b8435906001600160e01b038216820361020e5782602092604094526113a98388016111ed565b8382015281520193019261135e565b9080601f8301121561020e578135916113d0836111c3565b926113de60405194856111a2565b80845260208085019160051b8301019183831161020e5760208101915b83831061140a57505050505090565b82356001600160401b03811161020e578201808603601f190190610340821261020e576040519161010083018381106001600160401b038211176110ce57604052611457602083016111da565b8352611465604083016111ed565b60208401526060820135906001600160701b038216820361020e57610260916040850152611495608084016111ed565b60608501526114a660a08401611072565b6080850152609f19011261020e576040516114c081611119565b6114cc60c083016111fe565b81526114da60e083016111fe565b60208201526114ec61010083016111ed565b60408201526114fe610120830161120d565b6060820152611510610140830161120d565b6080820152611522610160830161120d565b60a0820152611534610180830161120d565b60c08201526115466101a0830161120d565b60e08201526115586101c0830161120d565b61010082015261156b6101e0830161120d565b61012082015261157e610200830161120d565b610140820152611591610220830161120d565b6101608201526115a4610240830161120d565b6101808201526115b7610260830161120d565b6101a08201526115ca610280830161120d565b6101c08201526115dd6102a0830161120d565b6101e08201526115f06102c0830161120d565b6102008201526116036102e08301611072565b61022082015261161661030083016111fe565b61024082015260a08301526103208101356001600160401b03811161020e5760209082010187601f8201121561020e57803590611652826111c3565b9161166060405193846111a2565b80835260208084019160051b830101918a831161020e5760208101915b8383106117b0575050505060c08301526103408101356001600160401b03811161020e57602091010186601f8201121561020e578035906116bd826111c3565b916116cb60405193846111a2565b80835260208084019160051b8301019189831161020e5760208101915b838310611706575050505060e08201528152602092830192016113fb565b82356001600160401b03811161020e578201906080828d03601f19011261020e576040519061173482611135565b61174060208401611072565b825261174e60408401611072565b602083015260608301356001600160401b03811161020e578d60206117759286010161131d565b60408301526080830135916001600160401b03831161020e576117a08e60208096958196010161131d565b60608201528152019201916116e8565b82356001600160401b03811161020e5782016040818e03601f19011261020e57604051916117dd836110b3565b602082013583526040820135926001600160401b03841161020e576118098f602080968196010161121a565b8382015281520192019161167d565b9181601f8401121561020e578235916001600160401b03831161020e576020808501948460051b01011161020e57565b90602080835192838152019201905f5b8181106118655750505090565b82516001600160a01b0316845260209384019390920191600101611858565b9081526001600160a01b0390911660208201526060604082018190526118ac92910190611848565b90565b6001600160401b0381116110ce57601f01601f191660200190565b81601f8201121561020e576020813591016118e4826118af565b926118f260405194856111a2565b8284528282011161020e57815f92602092838601378301015290565b359060ff8216820361020e57565b919060608382031261020e5760405190611935826110fe565b819380356001600160401b03811161020e57810190818303610160811261020e576040519361196385611150565b83356001600160401b03811161020e578161197f9186016118ca565b855260208401356001600160401b03811161020e57816119a09186016118ca565b602086015260408401356001600160401b03811161020e57816119c49186016118ca565b604086015260608401356001600160a01b038116810361020e57606086015260808401356001600160401b03811161020e5781611a029186016118ca565b608086015260a08401356001600160401b03811161020e57840160608183031261020e5760405191611a33836110fe565b81356001600160401b03811161020e5782019080601f8301121561020e57813591611a5d836111c3565b92611a6b60405194856111a2565b80845260208085019160051b8301019183831161020e5760208101915b838310611b4d57505050505060408392611ab89260a0969552611aad602082016111ed565b60208501520161190e565b60408201528583015260bf19011261020e576040928392611b29610140855192611ae184611187565b611aed60c0820161120d565b8452611afb60e0820161120d565b6020850152611b0d610100820161120d565b87850152611b1e610120820161120d565b60608501520161120d565b608082015260c08201528452611b416020820161120d565b60208501520135910152565b82356001600160401b03811161020e57820190818603601f190190610220821261020e5760405191611b7e8361116b565b60208401356cffffffffffffffffffffffffff8116810361020e578352611ba7604085016111ed565b6020840152611bb8606085016111ed565b6040840152611bc9608085016111fe565b6060840152611bda60a08501611072565b608084015260c084013560a084015260e08401359062ffffff8216820361020e5760e09160c0850152611c10610100860161190e565b8483015260ff19011261020e57604051611c2981611150565b611c36610120850161120d565b8152611c45610140850161120d565b6020820152611c57610160850161120d565b6040820152611c69610180850161120d565b6060820152611c7b6101a0850161120d565b6080820152611c8d6101c0850161120d565b60a0820152611c9f6101e0850161120d565b60c0820152610100830152611cb761020084016111ed565b610120830152610220830135916001600160401b03831161020e57611ce48860208096958196010161121a565b610140820152815201920191611a88565b604090600319011261020e576004359060243590565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b51906001600160a01b038216820361020e57565b903590601e198136030182121561020e57018035906001600160401b03821161020e57602001918160051b3603831361020e57565b60208183031261020e578051906001600160401b03821161020e57019080601f8301121561020e578151611dab816111c3565b92611db960405194856111a2565b81845260208085019260051b82010192831161020e57602001905b828210611de15750505090565b60208091611dee84611d2f565b815201910190611dd4565b9035601e198236030181121561020e5701602081359101916001600160401b03821161020e57606082023603831361020e57565b93919082916060860191865260208601526060604086015252608083019260808260051b82010193835f92605e1982360301905b858510611e72575050505050505090565b90919293949596607f1982820301855287358381121561020e57606082019190850180356001600160a01b0381169081900361020e57608091611ec5918452602081013560208501526040810190611df9565b60606040850152938490529101915f905b808210611ef757505050602080600192990195019501939594929190611e61565b909192606080600192838060a01b03611f0f88611072565b16815263ffffffff611f23602089016111ed565b16602082015260408701356040820152019401920190611ed6565b60405190611f4b82611135565b606080835f81525f60208201525f60408201520152565b5190811515820361020e57565b81601f8201121561020e57805190611f86826118af565b92611f9460405194856111a2565b8284526020838301011161020e57815f9260208093018386015e8301015290565b919060408382031261020e578251926020810151906001600160401b03821161020e57019080601f8301121561020e57815191611ff1836111c3565b92611fff60405194856111a2565b80845260208085019160051b8301019183831161020e5760208101915b83831061202b57505050505090565b82516001600160401b03811161020e578201906080828703601f19011261020e576040519061205982611135565b60208301516001600160a01b038116810361020e57825261207c60408401611f62565b6020830152606083015160408301526080830151916001600160401b03831161020e576120b188602080969581960101611f6f565b606082015281520192019161201c565b60609081906001600160a01b036120d782611072565b16845260ff6120e86020830161190e565b16602085015263ffffffff6120ff604083016111ed565b1660408501520135910152565b9035601e198236030181121561020e5701602081359101916001600160401b03821161020e57813603831361020e57565b908060209392818452848401375f828201840152601f01601f1916010190565b80511561216a5760200190565b634e487b7160e01b5f52603260045260245ffd5b805182101561216a5760209160051b010190565b9190820391821161219f57565b634e487b7160e01b5f52601160045260245ffd5b919082608091031261020e576040516121cb81611135565b60608082946121d981611072565b84526121e76020820161190e565b60208501526121f8604082016111ed565b60408501520135910152565b9190820180921161219f57565b905f9160c0810135805f52600160205260405f209360e083013594855f5260205260405f2060ff60405191612245836110b3565b546001600160a01b038116835260a01c1615156020820152612265611f3e565b935f915f975f935f905f9360018060a01b039051168061264e575b5060a08501359081811061263f5750505f965b6060975f93825f525f60205260405f20815f5260205260405f2092604051936122bb856110fe565b5460018060a01b03811680865260ff808360a01c1615159283602089015260a81c161515604087015215159081612637575b50612418575b5050505050156123f9575b50505081518515806123f1575b6123e6576123249086156123de5760ff60015b16612204565b9261232e846111c3565b9361233c60405195866111a2565b80855261234b601f19916111c3565b015f5b8181106123c757505083905f966123a9575b505f5b83518110156123a0578061239961237c6001938761217e565b51612387838b612204565b90612392828a61217e565b528761217e565b5001612363565b50939250935050565b600196506123b68561215d565b526123c08461215d565b505f612360565b6020906123d2611f3e565b8282890101520161234e565b60ff5f61231e565b509350606092915050565b50801561230b565b919250901561240c57505b5f80806122fe565b61012091500135612404565b91939998509193506101808636031261020e57604051612437816110e2565b61244087611072565b815261244e60208801611072565b90602081019182526124633660408a016121b3565b93604082019485528a8201938452608082019081526124856101008a01611072565b9a60a083019b8c526101208a01359b60c084018d815260e08501916101408d013583526101608d0135946001600160401b03861161020e576125569b5f9b8f6124d490612596993691016118ca565b6101008a019081528c51909701525160408051634661ac2360e11b815260206004820181905299516001600160a01b0390811660248301529a518b1660448201529b5180518b1660648e01529889015160ff1660848d015288015163ffffffff1660a48c015260609097015160c48b0152989a8b999690971697899788979190565b5160e488015251610104870152516001600160a01b03166101248601525161014485015251610164840152516101806101848401526101a4830190611d0b565b03915afa8015610967575f915f91612613575b50958195600192848061260a575b80612600575b6125eb575b50508515806125e2575b6125da575b808080806122f3565b94505f6125d1565b508015156125cc565b6125f89297508690614d3f565b945f806125c2565b50818714156125bd565b508115156125b7565b905061263191503d805f833e61262981836111a2565b810190611fb5565b5f6125a9565b90505f6122ed565b61264891612192565b96612293565b604051634661ac2360e11b8152602060048201529650600194505f9087906001600160a01b0361267d89611072565b1660248301526001600160a01b0361269760208a01611072565b1660448301526126ad6064830160408a016120c1565b60e482018b905261010482018690526001600160a01b036126d16101008a01611072565b1661012483015261012088013561014483015261014088013561016483015281806127176127036101608c018c61210c565b6101806101848501526101a484019161213d565b03915afa958615610967575f905f976127bf575b5095805115612280579a50509650612743829961215d565b519660408801516060890151805160a0811015612761575b50612280565b9080929350019060808183031261020e5761277e60208201611d2f565b5061278b60408201611d2f565b506060810151916001600160401b03831161020e576080926020806127b4930191840101611f6f565b500151905f8061275b565b90506127d69196503d805f833e61262981836111a2565b95905f61272b565b6040516383db9d0160e01b8152600481018290526001600160a01b038416602482015290929190602081806044810103817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916129d7575b506129cf57825f525f60205260405f2090602081019165ffffffffffff8351165f5260205260405f209360405194612880866110fe565b5494604060ff60018060a01b03881697888452818160a01c161515602085015260a81c161515910152846128b8575b50505050505f90565b65ffffffffffff946020946101006101649460405198899788966399f6d77f60e01b885260048801528183511660248801525116604486015265ffffffffffff604082015116606486015265ffffffffffff606082015116608486015263ffffffff60808201511660a48601526001600160701b0360a08201511660c486015263ffffffff60c08201511660e486015260018060a01b0360e082015116610104860152015161012484015260018060a01b03166101448301525afa908115610967575f91612995575b50612990575f808080806128af565b600190565b90506020813d6020116129c7575b816129b0602093836111a2565b8101031261020e576129c190611f62565b5f612981565b3d91506129a3565b505050600190565b90506020813d602011612a09575b816129f2602093836111a2565b8101031261020e57612a0390611f62565b5f612849565b3d91506129e5565b519065ffffffffffff8216820361020e57565b519063ffffffff8216820361020e57565b91908261012091031261020e57604051612a4e816110e2565b8092612a5981612a11565b8252612a6760208201612a11565b6020830152612a7860408201612a11565b6040830152612a8960608201612a11565b6060830152612a9a60808201612a24565b608083015260a08101516001600160701b038116810361020e5760a0830152612ac560c08201612a24565b60c083015260e08101516001600160a01b038116810361020e5760e083015261010090810151910152565b519061ffff8216820361020e57565b60405190612b0e6020836111a2565b5f80835282815b828110612b2157505050565b602090604051612b3081611135565b5f81525f838201525f60408201525f606082015282828501015201612b15565b3d15612b7a573d90612b61826118af565b91612b6f60405193846111a2565b82523d5f602084013e565b606090565b6040516320c94b1360e11b815260048101829052610380816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91612c9e575b50815f525f60205265ffffffffffff602060405f20920151165f5260205260405f2060405190612c03826110fe565b5460ff60018060a01b03821691828452818160a01c161515602085015260a81c161515604083015215612c94575160405163b64ce2c360e01b602082019081526024808301949094529281525f9283926001600160a01b031691612c686044826111a2565b51915afa612c74612b50565b9015612c8757612c8390614df4565b9091565b50612c90612aff565b5f91565b5050612c90612aff565b90506103803d8111612e4b575b612cb581836111a2565b81019080820391610380831261020e57612cd26102609183612a35565b9261011f19011261020e57610240612e4261036060405193612cf385611119565b612d006101208201612af0565b8552612d0f6101408201612af0565b6020860152612d216101608201612a24565b6040860152612d336101808201611f62565b6060860152612d456101a08201611f62565b6080860152612d576101c08201611f62565b60a0860152612d696101e08201611f62565b60c0860152612d7b6102008201611f62565b60e0860152612d8d6102208201611f62565b610100860152612d9e848201611f62565b610120860152612db16102608201611f62565b610140860152612dc46102808201611f62565b610160860152612dd76102a08201611f62565b610180860152612dea6102c08201611f62565b6101a0860152612dfd6102e08201611f62565b6101c0860152612e106103008201611f62565b6101e0860152612e236103208201611f62565b610200860152612e366103408201611d2f565b61022086015201612af0565b9101525f612bd4565b503d612cab565b919060a08382031261020e578251926020810151926040820151926060830151926080810151906001600160401b03821161020e57019080601f8301121561020e57815191612ea0836111c3565b92612eae60405194856111a2565b80845260208085019160051b8301019183831161020e5760208101915b838310612eda57505050505090565b82516001600160401b03811161020e578201906080828703601f19011261020e5760405190612f0882611135565b60208301516001600160a01b038116810361020e578252612f2b60408401611f62565b6020830152606083015160408301526080830151916001600160401b03831161020e57612f6088602080969581960101611f6f565b6060820152815201920191612ecb565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919060609060208301908135908116810361020e57604080516383db9d0160e01b81529085013560048201526001600160a01b03919091166024820152602081604481885afa908115610967575f916136a1575b50613688576101608301359384608085013593849560a08101359485936101208301359561014084013580159081150361020e5761356d575b5060209060609560408501355f526001835260405f209a878601359b8c5f52845260405f206040519061305a826110b3565b546001600160a01b03811680835260a09190911c60ff161515959091018590528015159485613565575b508461343d575b5060609b60408701355f525f60205260405f20815f5260205260405f2094604051956130b6876110fe565b549060ff60018060a01b03831692838952818160a01c16151560208a015260a81c16151590816040890152159182613433575b508161342b575b50613225575b505050505050508151159081809261321c575b61320e5750158080613204575b156131e657508451600101968760011161219f57613133886111c3565b97613141604051998a6111a2565b808952613150601f19916111c3565b015f5b8181106131cf575050613166889261215d565b516131708961215d565b5261317a8861215d565b505f5b86518110156131be57613190818861217e565b519080600101918260011161219f57826131b7916131b06001958e61217e565b528b61217e565b500161317d565b5092959194509295505b9493929190565b6020906131da611f3e565b82828d01015201613153565b9692959396949091945f146131fc5750916131c8565b9050916131c8565b5085511515613116565b969794969395509193915050565b50865115613109565b6101c087989e9d979c999c36031261020e57613257604051966132478861116b565b6132508a611072565b8852611072565b60208701526040880135604087015286860152608085015260a08401526132813660c087016121b3565b60c0840152613293610140860161120d565b60e08401526101008301526132ab610180850161120d565b6101208301526001600160401b036101a08501351161020e575f946132db6101209536906101a0810135016118ca565b610140840190815261010084019a8b526080840191825260a0840189815260c08501805187018a9052935160408051633d9cab2b60e21b815260206004820181905288516001600160a01b039081166024840152818a015181166044840152838a01516064840152998901516084830152955160a4820152925160c484015294518051881660e48401529384015160ff166101048301529383015163ffffffff166101248201526060929092015161014483015260e084015115156101648301529951610184820152939091015115156101a484015296516101c06101c484015291968792911690829081906133d6906101e4830190611d0b565b03915afa928315610967575f935f955f916133fc575b509493955f8080808080806130f6565b9194505061341d9194503d805f833e61341581836111a2565b810190612e52565b96939150509390945f6133ec565b90505f6130f0565b151591505f6130e9565b604051633d9cab2b60e21b815260206004820152919d939b929a5093985096505f92879290916001600160a01b0361347488611072565b1660248501526001600160a01b0361348b87611072565b166044850152604087013560648501528c608485015260a48401528960c48401526134bc60e4840160c088016120c1565b6134c9610140870161120d565b15156101648401526101848301526134e4610180860161120d565b15156101a483015281806135136134ff6101a089018961210c565b6101c06101c48501526101e484019161213d565b03915afa948515610967575f975f975f975f975f91613539575b50969798999b5f61308b565b939a5050965096506135569194503d805f833e61341581836111a2565b9399929891979096935f61352d565b94505f613084565b6040805163139db5a960e31b815290850135600482015290979196916020826024818c5afa908115610967575f91613652575b6135aa9250612204565b9660e084013560ff811680910361020e576101008501359063ffffffff821680920361020e576064602092604051948593849263622c574160e11b845260408b01356004850152602484015260448301525afa908115610967575f9161361f575b5061361890602092612204565b9590613028565b90506020813d60201161364a575b8161363a602093836111a2565b8101031261020e5751602061360b565b3d915061362d565b90506020823d602011613680575b8161366d602093836111a2565b8101031261020e576135aa9151906135a0565b3d9150613660565b505f936080830135935060a08301359261012001359190565b90506020813d6020116136d3575b816136bc602093836111a2565b8101031261020e576136cd90611f62565b5f612fef565b3d91506136af565b90602080835192838152019201905f5b8181106136f85750505090565b909192602060c0600192865163ffffffff81511682526001600160401b03848201511684830152848060a01b03604082015116604083015260608101511515606083015265ffffffffffff608082015116608083015260a08580821b039101511660a082015201940191019190916136eb565b90602080835192838152019201905f5b8181106137885750505090565b825180516001600160e01b0316855260209081015163ffffffff16818601526040909401939092019160010161377b565b9080602083519182815201916020808360051b8301019401925f915b8383106137e457505050505090565b9091929394601f19828203018352855161034082019065ffffffffffff815116835263ffffffff60208201511660208401526001600160701b03604082015116604084015263ffffffff606082015116606084015260018060a01b03608082015116608084015261ffff61024060a08301518281511660a08701528260208201511660c087015263ffffffff60408201511660e0870152606081015115156101008701526080810151151561012087015260a0810151151561014087015260c0810151151561016087015260e0810151151561018087015261010081015115156101a087015261012081015115156101c087015261014081015115156101e0870152610160810151151561020087015261018081015115156102208701526101a08101511515828701526101c081015115156102608701526101e0810151151561028087015261020081015115156102a087015260018060a01b03610220820151166102c08701520151166102e084015260c0810151916103406103008501528251809152610360840160206103608360051b8701019401915f5b818110613a3f575050505060e0015191610320818303910152815180825260208201906020808260051b8501019401925f5b8281106139d2575050505050602080600192970193019301919392906137d5565b9091929394602080613a32600193601f19878203018952895190858060a01b038251168152858060a01b038483015116848201526060613a21604084015160806040850152608084019061376b565b92015190606081840391015261376b565b97019501939291016139b1565b90919294602080613a6e60019361035f198b82030188526040838b5180518452015191818582015201906136db565b9701940192910161397f565b98979596949391613aaa93613a9c928b5260a060208c015260a08b019161213d565b9088820360408a01526137b9565b938685036060880152808552602085019460208260051b82010195835f92603e1982360301905b858510613af157505050505050508460806118ac9596850391015261213d565b90919293949598601f1982820301855289358381121561020e57604082019190850180356001600160a01b0381169081900361020e57606091613b3a9184526020810190611df9565b60406020850152938490529101915f905b808210613b6c575050506020806001929b0195019501939594929190613ad1565b909192606080600192838060a01b03613b8488611072565b16815260ff613b956020890161190e565b16602082015263ffffffff613bac604089016111ed565b166040820152019401920190613b4b565b949892999697606098613bd6613bd1615768565b614fbe565b5f98906001600160a01b03166001600160a01b03198a5c1617895d60405163180e2b1160e31b81523060048201529b60208d602481347f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af1978815610967578e9d5f99613f0f575b50908894939291859f6bffffffffffffffffffffffff60a01b5f5c165f5d613c6f87615042565b613c799087615210565b9e8f9060200151151590613c8d9288615544565b6040516307128b6b60e31b8152978897613caa9760048a01613a7a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031691839103815a6020945f91f1801561096757613ee0575b50613cf58261513c565b6001600160a01b038716803b1561020e575f80916024604051809481936351106b4b60e11b83528860048401525af1801561096757613ecb575b50602081013580613dfa575b50507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163b15613df657604051632142170760e11b81523060048201526001600160a01b03928316602482015260448101919091529082908290606490829084907f0000000000000000000000000000000000000000000000000000000000000000165af18015613deb57613dd6575050565b613de18280926111a2565b613de85750565b80fd5b6040513d84823e3d90fd5b8280fd5b829650613e4090613e0e8387949587614bde565b6108ba6108c8613e1c615768565b60408051602081019586526001600160a01b03909216908201529182906060820190565b92613e606040519485938493639d7f900160e01b85528b60048601611e2d565b0381837f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af1908115613ec0578391613ea6575b50935f80613d3b565b613eba91503d8085833e61095981836111a2565b5f613e9d565b6040513d85823e3d90fd5b613ed89194505f906111a2565b5f925f613d2f565b6020813d602011613f07575b81613ef9602093836111a2565b8101031261020e5751613ceb565b3d9150613eec565b9d5093929190975060208d3d602011613f46575b81613f30602093836111a2565b8101031261020e578d9c5197909192935f613c48565b3d9150613f23565b90604051613f5b816110fe565b604051613f6781611150565b6060815260606020820152606060408201525f606082015260606080820152604051613f92816110fe565b606081525f60208201525f604082015260a0820152604051613fb381611187565b5f81525f60208201525f60408201525f60608201525f608082015260c082015281525f60208201525f6040820152809280518015614019575060a060129263ffffffff604083614003829661215d565b5101510151166020838351015101525101510152565b6328a3030960e21b5f5260045260245ffd5b9081602091031261020e57516001600160a01b038116810361020e5790565b6040516331a9108f60e11b81526004810182905291945f949093929091906020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916146b7575b506140b1615768565b6001600160a01b03918216911680821415806145fe575b6145d45750506140d781615042565b60405163d4a1b4b160e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169390602081600481885afa908115610967576024916020915f916145b7575b506040516319fade8560e11b81526004810186905292839182906001600160a01b03165afa908115610967575f91614585575b504281101561456b5750865160a0015151511561429d576141818783615210565b966001600160a01b03881690813b1561020e575f80926024604051809581936351106b4b60e11b83528960048401525af191821561096757899261426c575b509261421d6141e061420b96948a946020809a9801511515915b85615544565b93604051988997889687956303141db760e41b875260048701526060602487015260648601906137b9565b8481036003190160448601529161213d565b03925af19182156142605791614231575091565b90506020813d602011614258575b8161424c602093836111a2565b8101031261020e575191565b3d915061423f565b604051903d90823e3d90fd5b602098508896949192506141e061420b969461428b5f61421d946111a2565b8b5f9b509493969850949650506141c0565b60405163d4a1b4b160e01b8152909650602081600481875afa90811561096757602491610140915f9161454c575b5060405163855a54ed60e01b81526004810185905292839182906001600160a01b03165afa908115610967575f905f926144ff575b506020019065ffffffffffff825116151590816144c4575b5080614494575b156143ae575165ffffffffffff16955b815f52600160205260405f20875f5260205260405f209660405197614353896110b3565b549060ff602060018060a01b0384169a8b8152019260a01c16151582528880156143945750506020949261421d6141e061420b96948b8b95511515916141da565b8490630b77705360e01b5f5260045260245260445260645ffd5b5060405163d4a1b4b160e01b8152602081600481875afa90811561096757602491610120915f91614465575b506040516321d1336160e11b81526004810185905292839182906001600160a01b03165afa908115610967575f91614420575b506020015165ffffffffffff169561432f565b90506101203d811161445e575b61443781836111a2565b81016101208282031261020e5761445760209165ffffffffffff93612a35565b915061440d565b503d61442d565b614487915060203d60201161448d575b61447f81836111a2565b81019061402b565b5f6143da565b503d614475565b50815f52600160205260405f2065ffffffffffff8251165f5260205260018060a01b0360405f205416151561431f565b905060068110156144eb57600481149081156144e2575b505f614318565b9050155f6144db565b634e487b7160e01b5f52602160045260245ffd5b9150506101403d8111614545575b61451781836111a2565b81016101408282031261020e576145316101209183612a35565b91015190600682101561020e576020614300565b503d61450d565b614565915060203d60201161448d5761447f81836111a2565b5f6142cb565b8263b357f5c560e01b5f526004526024524260445260645ffd5b90506020813d6020116145af575b816145a0602093836111a2565b8101031261020e57515f614160565b3d9150614593565b6145ce9150823d841161448d5761447f81836111a2565b5f61412d565b9160849260405192631326f75560e11b845260048401526024830152604482015260026064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018490526002606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f9161467d575b50156140c8565b90506020813d6020116146af575b81614698602093836111a2565b8101031261020e576146a990611f62565b5f614676565b3d915061468b565b90506020813d6020116146e9575b816146d2602093836111a2565b8101031261020e576146e390611d2f565b5f6140a8565b3d91506146c5565b9896979092949795939195604051946331a9108f60e11b86525f958b600482015260208160248160018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa908115610967575f91614ba4575b5061475a615768565b6001600160a01b0391821691168082141580614aeb575b614ac057506001600160a01b03614786615768565b168181141580614a07575b6149dc5750886148d3575b506147a68b615042565b6147b0878c615210565b996001600160a01b038b1694853b1561020e575f809660248f604051998a9384926351106b4b60e11b845260048401525af18015610967578d968d916148a6575b50614829959493929161480e916020809b9c015115159189615544565b6040516307128b6b60e31b81529a8b98899860048a01613a7a565b0381847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af19081156142605790614872575b61487091509361513c565b565b506020813d60201161489e575b8161488c602093836111a2565b8101031261020e576148709051614865565b3d915061487f565b6020995061480e9150916148c15f61482998979695946111a2565b8d8a5f9b5050915091929394956147f1565b6001600160a01b036148e3615768565b168181141580614923575b6148f8575061479c565b908c60849260405192631326f75560e11b845260048401526024830152604482015260076064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018e90526007606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916149a2575b50156148ee565b90506020813d6020116149d4575b816149bd602093836111a2565b8101031261020e576149ce90611f62565b5f61499b565b3d91506149b0565b908c60849260405192631326f75560e11b8452600484015260248301526044820152600f6064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018e9052600f606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91614a86575b5015614791565b90506020813d602011614ab8575b81614aa1602093836111a2565b8101031261020e57614ab290611f62565b5f614a7f565b3d9150614a94565b908c60849260405192631326f75560e11b845260048401526024830152604482015260036064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018e90526003606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91614b6a575b5015614771565b90506020813d602011614b9c575b81614b85602093836111a2565b8101031261020e57614b9690611f62565b5f614b63565b3d9150614b78565b90506020813d602011614bd6575b81614bbf602093836111a2565b8101031261020e57614bd090611d2f565b5f614751565b3d9150614bb2565b905f5b614beb8480611d43565b9050811015614d3957614bfe8480611d43565b82101561216a578160051b810135605e198236030181121561020e570160200135614c2b57600101614be1565b50909150614c37615768565b6001600160a01b0392831692168083141580614c81575b614c5757505050565b6084935060405192631326f75560e11b845260048401526024830152604482015260226064820152fd5b50604051631a45b42760e11b81526004810182905260248101849052604481018390526022606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91614d00575b5015614c4e565b90506020813d8211614d31575b81614d1a602093836111a2565b8101031261020e57614d2b90611f62565b5f614cf9565b3d9150614d0d565b50505050565b90915f198383099280830292838086109503948086039514614dd25782851015614dba5790829109600182190182168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b630c740aef60e31b5f5260045260245260445260645ffd5b505091508115614de0570490565b634e487b7160e01b5f52601260045260245ffd5b6060815110612c8757602081015191604082015191604083108015614fb2575b8015614f9c575b614f905760208382010151906020840180941161219f57614e3d848251612192565b60071c8211614f8357614e4f826111c3565b614e5c60405191826111a2565b828152601f19614e6b846111c3565b015f5b818110614f54575050935f5b838110614e875750505050565b8060071b8181046080148215171561219f57614ea39083612204565b8301602081015190604081015190608060608201519101519160ff81118015614f44575b8015614f34575b614f2157916001600160801b03809260ff600197969560405196614ef188611135565b8752166020860152166040840152166060820152614f0f828961217e565b52614f1a818861217e565b5001614e7a565b5050505050505050915050612c90612aff565b506001600160801b038311614ece565b506001600160801b038211614ec7565b602090604051614f6381611135565b5f81525f838201525f60408201525f606082015282828601015201614e6e565b5050915050612c90612aff565b50915050612c90612aff565b508051601f19810190811161219f578311614e1b565b50601f83161515614e14565b803b156118ac575f80604051602081019063296eee5160e01b825260048152614fe86024826111a2565b5190845afa614ff5612b50565b90158015615037575b6150335760208180518101031261020e576001600160a01b039061502490602001611d2f565b168061502e575090565b905090565b5090565b506020815110614ffe565b604051632eec7b5560e11b8152600481018290526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916150fa575b506001600160a01b03169081156150f6577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316908183036150de57505050565b637da4da8b60e01b5f5260045260245260445260645ffd5b5050565b90506020813d602011615134575b81615115602093836111a2565b8101031261020e57516001600160a01b038116810361020e575f615096565b3d9150615108565b604051632eec7b5560e11b8152600481018290526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916151ce575b506001600160a01b03908116917f0000000000000000000000000000000000000000000000000000000000000000909116908183036150de57505050565b90506020813d602011615208575b816151e9602093836111a2565b8101031261020e57516001600160a01b038116810361020e575f615190565b3d91506151dc565b906040815191015180155f1461550957505f915b6040519283916337b4a3c360e11b83526004830152606060248301526152b661528d615277615261865161016060648801526101c4870190611d0b565b6020870151868203606319016084880152611d0b565b60408601518582036063190160a4870152611d0b565b60608501516001600160a01b031660c485015260808501518482036063190160e4860152611d0b565b9260a0810151936063198482030161010485015260608101948051956060835286518091526080830190602060808260051b8601019801915f905b8282106153e0575050505060c060209693869593604060ff818663ffffffff8d6080990151168d8601520151169101520151805115156101248601528681015115156101448601526040810151151561016486015260608101511515610184860152015115156101a4840152604483015203815f60018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1908115610967575f916153a1575090565b90506020813d6020116153d8575b816153bc602093836111a2565b8101031261020e57516001600160a01b038116810361020e5790565b3d91506153af565b9193949596975091976020806154f66001936102206101408e607f198d8503018952516cffffffffffffffffffffffffff815116845263ffffffff86820151168685015263ffffffff604082015116604085015261ffff6060820151166060850152878060a01b03608082015116608085015260a081015160a085015262ffffff60c08201511660c085015260ff60e08201511660e085015260c0610100820151805115156101008701528781015115156101208701526040810151151584870152606081015115156101608701526080810151151561018087015260a081015115156101a0870152015115156101c085015263ffffffff610120820151166101e08501520151918161020082015201906136db565b9a019201920189979695949391926152f1565b615511615768565b604080516001600160a01b039092166020830190815282820193909352815261553b6060826111a2565b51902091615224565b90919392935f5b83518110156157605761555e8142612204565b306001600160a01b0361022060a0615576868a61217e565b5101510151161461572a57906001916155ee604051615594816110b3565b60a085811b86900387811683528b151560208085019182525f8b815289825260408082208983529092522093518454915160ff60a01b1991909316166001600160a81b03199091161790151590911b60ff60a01b16179055565b828060a01b0361022060a0615603858a61217e565b510151015116615654575b503061022060a061561f848961217e565b5101510152816101e060a0615634848961217e565b51015101528161020060a0615649848961217e565b51015101520161554b565b828060a01b0361022060a0615669858a61217e565b5101510151169061570b6101e060a0615682868b61217e565b5101510151151561020060a0615698878c61217e565b5101510151151592604051946156ad866110fe565b8552602080860192835260408087019586525f8b815280835281812093815292909152902093518454915160ff60a01b1960a089811b8a900393909316166001600160a81b031990931692909217911515901b60ff60a01b16178355565b51815460ff60a81b191690151560a81b60ff60a81b161790555f61560e565b836001600160a01b0361022060a0615742868a61217e565b510151015116630b77705360e01b5f5260045260245260445260645ffd5b509193505050565b60143610158061578f575b1561578b57601319360136811161020e573560601c90565b3390565b50337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461577356fea164736f6c634300081c000a",
|
|
3501
|
+
"deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610fa957508063150b7a0214610eea578063293c499914610ea6578063296eee5114610e815780632d99317314610d915780633141db7014610d2c57806338945b5814610c835780634509224414610bc6578063572b6c0514610b72578063670d99be14610a90578063673706e8146107bb5780636a19a70f1461075c5780637da0a8771461071857806388bc2ef3146106d45780638cc35846146105fb57806394e1cf571461055e57806399f6d77f14610447578063abf8c5c814610403578063b0401dab14610375578063b5d2553314610331578063b64ce2c31461029a578063ee0fc12114610256578063f434c914146102125763f672acac14610124575f80fd5b3461020e57602036600319011261020e576004356001600160401b03811161020e576101c0600319823603011261020e5761016190600401612f70565b91939060405194859460a0860193865260208601526040850152606084015260a06080840152815180915260c0830190602060c08260051b8601019301915f905b8282106101b157505050500390f35b919360019193955060206101fe819260bf198a8203018652608060608a51878060a01b03815116845285810151151586850152604081015160408501520151918160608201520190611d0b565b96019201920185949391926101a2565b5f80fd5b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e57602036600319011261020e576102b6600435612b7f565b90604051918291604083019083526040602084015281518091526020606084019201905f5b8181106102e9575050500390f35b91935091602060806001926001600160801b03606088518051845260ff86820151168685015282604082015116604085015201511660608201520194019101918493926102db565b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e5761038336611cf5565b905f60408051610392816110fe565b82815282602082015201525f525f60205260405f20905f52602052606060405f20604051906103c0826110fe565b5460018060a01b0381169182815260ff60406020830192828560a01c1615158452019260a81c161515825260405192835251151560208301525115156040820152f35b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e5761016036600319011261020e5761012036602319011261020e57604051610472816110e2565b60243565ffffffffffff8116810361020e57815260443565ffffffffffff8116810361020e57602082015260643565ffffffffffff8116810361020e57604082015260843565ffffffffffff8116810361020e57606082015260a43563ffffffff8116810361020e57608082015260c4356001600160701b038116810361020e5760a082015260e43563ffffffff8116810361020e5760c0820152610104356001600160a01b038116810361020e5760e08201526101243561010082015261014435906001600160a01b038216820361020e57602091610554916004356127de565b6040519015158152f35b3461020e57608036600319011261020e576024356001600160401b03811161020e5761058e90369060040161191c565b6044356001600160401b03811161020e576105ad9036906004016113b8565b606435916001600160401b03831161020e576105d06105db933690600401611086565b92909160043561404a565b604080519283526001600160a01b039091166020830152819081015b0390f35b3461020e57602036600319011261020e576004356001600160401b03811161020e57610180600319823603011261020e5761063890600401612211565b90604051918291604083019083526040602084015281518091526060830190602060608260051b8601019301915f905b82821061067757505050500390f35b919360019193955060206106c48192605f198a8203018652608060608a51878060a01b03815116845285810151151586850152604081015160408501520151918160608201520190611d0b565b9601920192018594939192610668565b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e5761076a36611cf5565b905f52600160205260405f20905f526020526040805f20602082519161078f836110b3565b546001600160a01b03811680845260a09190911c60ff1615159190920181905282519182526020820152f35b3461020e57604036600319011261020e576024356004356001600160401b03821161020e5781600401906040600319843603011261020e576040516331a9108f60e11b8152600481018290526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91610a56575b50610850615768565b6001600160a01b038281169116808214158061099d575b610972576108f05f86866108d28a61088084848b614bde565b6108ba6108c861088e615768565b6040805160249590950135602086019081526001600160a01b0390921690850152929182906060820190565b03601f1981018352826111a2565b5190209280611d43565b604051639d7f900160e01b8152958694859491939160048601611e2d565b0381837f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af18015610967576105f7915f91610945575b50604051918291602083526020830190611848565b61096191503d805f833e61095981836111a2565b810190611d78565b82610930565b6040513d5f823e3d90fd5b908360849260405192631326f75560e11b845260048401526024830152604482015260216064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018590526021606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91610a1c575b5015610867565b90506020813d602011610a4e575b81610a37602093836111a2565b8101031261020e57610a4890611f62565b87610a15565b3d9150610a2a565b90506020813d602011610a88575b81610a71602093836111a2565b8101031261020e57610a8290611d2f565b84610847565b3d9150610a64565b60c036600319011261020e57610aa461105c565b6024356001600160401b03811161020e57610ac3903690600401611086565b91906044356001600160401b03811161020e57610ae49036906004016113b8565b6064356001600160401b03811161020e57610b03903690600401611818565b6084929192356001600160401b03811161020e57610b25903690600401611086565b93909260a435966001600160401b03881161020e576040600319893603011261020e576105f798610b639860040197610b5d84613f4e565b92613bbd565b60409391935193849384611884565b3461020e57602036600319011261020e576020610b8d61105c565b6040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b039081169216919091148152f35b3461020e5760c036600319011261020e576024356001600160401b03811161020e57610bf6903690600401611086565b6044356001600160401b03811161020e57610c1590369060040161191c565b916064356001600160401b03811161020e57610c359036906004016113b8565b6084356001600160401b03811161020e57610c54903690600401611818565b9160a435956001600160401b03871161020e57610c786105db973690600401611086565b9690956004356146f1565b3461020e5760a036600319011261020e576024356001600160401b03811161020e57610cb3903690600401611086565b906044356001600160401b03811161020e57610cd39036906004016113b8565b916064356001600160401b03811161020e57610cf3903690600401611818565b90608435946001600160401b03861161020e57610d176105db963690600401611086565b959094610d2383613f4e565b916004356146f1565b3461020e57606036600319011261020e576024356001600160401b03811161020e57610d5c9036906004016113b8565b604435906001600160401b03821161020e57610d7f6105db923690600401611086565b91610d8981613f4e565b60043561404a565b60e036600319011261020e57610da561105c565b6024356001600160401b03811161020e57610dc4903690600401611086565b9091604435906001600160401b03821161020e576060600319833603011261020e576064356001600160401b03811161020e57610e059036906004016113b8565b906084356001600160401b03811161020e57610e25903690600401611818565b9060a4356001600160401b03811161020e57610e45903690600401611086565b94909360c435976001600160401b03891161020e5760406003198a3603011261020e576105f799610b5d610b639a60040199369060040161191c565b3461020e575f36600319011261020e576040515f5c6001600160a01b03168152602090f35b3461020e575f36600319011261020e576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b3461020e57608036600319011261020e57610f0361105c565b506024356001600160a01b0381169081900361020e576064356001600160401b03811161020e57610f38903690600401611086565b5050337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614801590610fa0575b610f8457604051630a85bd0160e11b8152602090f35b6388470c7960e01b5f523360045260245260443560445260645ffd5b50801515610f6e565b3461020e57602036600319011261020e576004359063ffffffff60e01b821680920361020e5760209163c1c8b89b60e01b811490811561104b575b811561103a575b8115611029575b8115611018575b8115611007575b5015158152f35b6301ffc9a760e01b14905083611000565b630a85bd0160e11b81149150610ff9565b63296eee5160e01b81149150610ff2565b63b64ce2c360e01b81149150610feb565b63e347239560e01b81149150610fe4565b600435906001600160a01b038216820361020e57565b35906001600160a01b038216820361020e57565b9181601f8401121561020e578235916001600160401b03831161020e576020838186019501011161020e57565b604081019081106001600160401b038211176110ce57604052565b634e487b7160e01b5f52604160045260245ffd5b61012081019081106001600160401b038211176110ce57604052565b606081019081106001600160401b038211176110ce57604052565b61026081019081106001600160401b038211176110ce57604052565b608081019081106001600160401b038211176110ce57604052565b60e081019081106001600160401b038211176110ce57604052565b61016081019081106001600160401b038211176110ce57604052565b60a081019081106001600160401b038211176110ce57604052565b90601f801991011681019081106001600160401b038211176110ce57604052565b6001600160401b0381116110ce5760051b60200190565b359065ffffffffffff8216820361020e57565b359063ffffffff8216820361020e57565b359061ffff8216820361020e57565b3590811515820361020e57565b81601f8201121561020e57803590611231826111c3565b9261123f60405194856111a2565b828452602060c081860194028301019181831161020e57602001925b828410611269575050505090565b60c08483031261020e576040519060c082018281106001600160401b038211176110ce57604052611299856111ed565b825260208501356001600160401b038116810361020e57602083015260408501356001600160a01b038116810361020e5760408301526112db6060860161120d565b60608301526112ec608086016111da565b608083015260a0850135906001600160a01b038216820361020e578260209260a060c095015281520193019261125b565b81601f8201121561020e57803590611334826111c3565b9261134260405194856111a2565b82845260208085019360061b8301019181831161020e57602001925b82841061136c575050505090565b60408483031261020e5760405190611383826110b3565b8435906001600160e01b038216820361020e5782602092604094526113a98388016111ed565b8382015281520193019261135e565b9080601f8301121561020e578135916113d0836111c3565b926113de60405194856111a2565b80845260208085019160051b8301019183831161020e5760208101915b83831061140a57505050505090565b82356001600160401b03811161020e578201808603601f190190610340821261020e576040519161010083018381106001600160401b038211176110ce57604052611457602083016111da565b8352611465604083016111ed565b60208401526060820135906001600160701b038216820361020e57610260916040850152611495608084016111ed565b60608501526114a660a08401611072565b6080850152609f19011261020e576040516114c081611119565b6114cc60c083016111fe565b81526114da60e083016111fe565b60208201526114ec61010083016111ed565b60408201526114fe610120830161120d565b6060820152611510610140830161120d565b6080820152611522610160830161120d565b60a0820152611534610180830161120d565b60c08201526115466101a0830161120d565b60e08201526115586101c0830161120d565b61010082015261156b6101e0830161120d565b61012082015261157e610200830161120d565b610140820152611591610220830161120d565b6101608201526115a4610240830161120d565b6101808201526115b7610260830161120d565b6101a08201526115ca610280830161120d565b6101c08201526115dd6102a0830161120d565b6101e08201526115f06102c0830161120d565b6102008201526116036102e08301611072565b61022082015261161661030083016111fe565b61024082015260a08301526103208101356001600160401b03811161020e5760209082010187601f8201121561020e57803590611652826111c3565b9161166060405193846111a2565b80835260208084019160051b830101918a831161020e5760208101915b8383106117b0575050505060c08301526103408101356001600160401b03811161020e57602091010186601f8201121561020e578035906116bd826111c3565b916116cb60405193846111a2565b80835260208084019160051b8301019189831161020e5760208101915b838310611706575050505060e08201528152602092830192016113fb565b82356001600160401b03811161020e578201906080828d03601f19011261020e576040519061173482611135565b61174060208401611072565b825261174e60408401611072565b602083015260608301356001600160401b03811161020e578d60206117759286010161131d565b60408301526080830135916001600160401b03831161020e576117a08e60208096958196010161131d565b60608201528152019201916116e8565b82356001600160401b03811161020e5782016040818e03601f19011261020e57604051916117dd836110b3565b602082013583526040820135926001600160401b03841161020e576118098f602080968196010161121a565b8382015281520192019161167d565b9181601f8401121561020e578235916001600160401b03831161020e576020808501948460051b01011161020e57565b90602080835192838152019201905f5b8181106118655750505090565b82516001600160a01b0316845260209384019390920191600101611858565b9081526001600160a01b0390911660208201526060604082018190526118ac92910190611848565b90565b6001600160401b0381116110ce57601f01601f191660200190565b81601f8201121561020e576020813591016118e4826118af565b926118f260405194856111a2565b8284528282011161020e57815f92602092838601378301015290565b359060ff8216820361020e57565b919060608382031261020e5760405190611935826110fe565b819380356001600160401b03811161020e57810190818303610160811261020e576040519361196385611150565b83356001600160401b03811161020e578161197f9186016118ca565b855260208401356001600160401b03811161020e57816119a09186016118ca565b602086015260408401356001600160401b03811161020e57816119c49186016118ca565b604086015260608401356001600160a01b038116810361020e57606086015260808401356001600160401b03811161020e5781611a029186016118ca565b608086015260a08401356001600160401b03811161020e57840160608183031261020e5760405191611a33836110fe565b81356001600160401b03811161020e5782019080601f8301121561020e57813591611a5d836111c3565b92611a6b60405194856111a2565b80845260208085019160051b8301019183831161020e5760208101915b838310611b4d57505050505060408392611ab89260a0969552611aad602082016111ed565b60208501520161190e565b60408201528583015260bf19011261020e576040928392611b29610140855192611ae184611187565b611aed60c0820161120d565b8452611afb60e0820161120d565b6020850152611b0d610100820161120d565b87850152611b1e610120820161120d565b60608501520161120d565b608082015260c08201528452611b416020820161120d565b60208501520135910152565b82356001600160401b03811161020e57820190818603601f190190610220821261020e5760405191611b7e8361116b565b60208401356cffffffffffffffffffffffffff8116810361020e578352611ba7604085016111ed565b6020840152611bb8606085016111ed565b6040840152611bc9608085016111fe565b6060840152611bda60a08501611072565b608084015260c084013560a084015260e08401359062ffffff8216820361020e5760e09160c0850152611c10610100860161190e565b8483015260ff19011261020e57604051611c2981611150565b611c36610120850161120d565b8152611c45610140850161120d565b6020820152611c57610160850161120d565b6040820152611c69610180850161120d565b6060820152611c7b6101a0850161120d565b6080820152611c8d6101c0850161120d565b60a0820152611c9f6101e0850161120d565b60c0820152610100830152611cb761020084016111ed565b610120830152610220830135916001600160401b03831161020e57611ce48860208096958196010161121a565b610140820152815201920191611a88565b604090600319011261020e576004359060243590565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b51906001600160a01b038216820361020e57565b903590601e198136030182121561020e57018035906001600160401b03821161020e57602001918160051b3603831361020e57565b60208183031261020e578051906001600160401b03821161020e57019080601f8301121561020e578151611dab816111c3565b92611db960405194856111a2565b81845260208085019260051b82010192831161020e57602001905b828210611de15750505090565b60208091611dee84611d2f565b815201910190611dd4565b9035601e198236030181121561020e5701602081359101916001600160401b03821161020e57606082023603831361020e57565b93919082916060860191865260208601526060604086015252608083019260808260051b82010193835f92605e1982360301905b858510611e72575050505050505090565b90919293949596607f1982820301855287358381121561020e57606082019190850180356001600160a01b0381169081900361020e57608091611ec5918452602081013560208501526040810190611df9565b60606040850152938490529101915f905b808210611ef757505050602080600192990195019501939594929190611e61565b909192606080600192838060a01b03611f0f88611072565b16815263ffffffff611f23602089016111ed565b16602082015260408701356040820152019401920190611ed6565b60405190611f4b82611135565b606080835f81525f60208201525f60408201520152565b5190811515820361020e57565b81601f8201121561020e57805190611f86826118af565b92611f9460405194856111a2565b8284526020838301011161020e57815f9260208093018386015e8301015290565b919060408382031261020e578251926020810151906001600160401b03821161020e57019080601f8301121561020e57815191611ff1836111c3565b92611fff60405194856111a2565b80845260208085019160051b8301019183831161020e5760208101915b83831061202b57505050505090565b82516001600160401b03811161020e578201906080828703601f19011261020e576040519061205982611135565b60208301516001600160a01b038116810361020e57825261207c60408401611f62565b6020830152606083015160408301526080830151916001600160401b03831161020e576120b188602080969581960101611f6f565b606082015281520192019161201c565b60609081906001600160a01b036120d782611072565b16845260ff6120e86020830161190e565b16602085015263ffffffff6120ff604083016111ed565b1660408501520135910152565b9035601e198236030181121561020e5701602081359101916001600160401b03821161020e57813603831361020e57565b908060209392818452848401375f828201840152601f01601f1916010190565b80511561216a5760200190565b634e487b7160e01b5f52603260045260245ffd5b805182101561216a5760209160051b010190565b9190820391821161219f57565b634e487b7160e01b5f52601160045260245ffd5b919082608091031261020e576040516121cb81611135565b60608082946121d981611072565b84526121e76020820161190e565b60208501526121f8604082016111ed565b60408501520135910152565b9190820180921161219f57565b905f9160c0810135805f52600160205260405f209360e083013594855f5260205260405f2060ff60405191612245836110b3565b546001600160a01b038116835260a01c1615156020820152612265611f3e565b935f915f975f935f905f9360018060a01b039051168061264e575b5060a08501359081811061263f5750505f965b6060975f93825f525f60205260405f20815f5260205260405f2092604051936122bb856110fe565b5460018060a01b03811680865260ff808360a01c1615159283602089015260a81c161515604087015215159081612637575b50612418575b5050505050156123f9575b50505081518515806123f1575b6123e6576123249086156123de5760ff60015b16612204565b9261232e846111c3565b9361233c60405195866111a2565b80855261234b601f19916111c3565b015f5b8181106123c757505083905f966123a9575b505f5b83518110156123a0578061239961237c6001938761217e565b51612387838b612204565b90612392828a61217e565b528761217e565b5001612363565b50939250935050565b600196506123b68561215d565b526123c08461215d565b505f612360565b6020906123d2611f3e565b8282890101520161234e565b60ff5f61231e565b509350606092915050565b50801561230b565b919250901561240c57505b5f80806122fe565b61012091500135612404565b91939998509193506101808636031261020e57604051612437816110e2565b61244087611072565b815261244e60208801611072565b90602081019182526124633660408a016121b3565b93604082019485528a8201938452608082019081526124856101008a01611072565b9a60a083019b8c526101208a01359b60c084018d815260e08501916101408d013583526101608d0135946001600160401b03861161020e576125569b5f9b8f6124d490612596993691016118ca565b6101008a019081528c51909701525160408051634661ac2360e11b815260206004820181905299516001600160a01b0390811660248301529a518b1660448201529b5180518b1660648e01529889015160ff1660848d015288015163ffffffff1660a48c015260609097015160c48b0152989a8b999690971697899788979190565b5160e488015251610104870152516001600160a01b03166101248601525161014485015251610164840152516101806101848401526101a4830190611d0b565b03915afa8015610967575f915f91612613575b50958195600192848061260a575b80612600575b6125eb575b50508515806125e2575b6125da575b808080806122f3565b94505f6125d1565b508015156125cc565b6125f89297508690614d3f565b945f806125c2565b50818714156125bd565b508115156125b7565b905061263191503d805f833e61262981836111a2565b810190611fb5565b5f6125a9565b90505f6122ed565b61264891612192565b96612293565b604051634661ac2360e11b8152602060048201529650600194505f9087906001600160a01b0361267d89611072565b1660248301526001600160a01b0361269760208a01611072565b1660448301526126ad6064830160408a016120c1565b60e482018b905261010482018690526001600160a01b036126d16101008a01611072565b1661012483015261012088013561014483015261014088013561016483015281806127176127036101608c018c61210c565b6101806101848501526101a484019161213d565b03915afa958615610967575f905f976127bf575b5095805115612280579a50509650612743829961215d565b519660408801516060890151805160a0811015612761575b50612280565b9080929350019060808183031261020e5761277e60208201611d2f565b5061278b60408201611d2f565b506060810151916001600160401b03831161020e576080926020806127b4930191840101611f6f565b500151905f8061275b565b90506127d69196503d805f833e61262981836111a2565b95905f61272b565b6040516383db9d0160e01b8152600481018290526001600160a01b038416602482015290929190602081806044810103817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916129d7575b506129cf57825f525f60205260405f2090602081019165ffffffffffff8351165f5260205260405f209360405194612880866110fe565b5494604060ff60018060a01b03881697888452818160a01c161515602085015260a81c161515910152846128b8575b50505050505f90565b65ffffffffffff946020946101006101649460405198899788966399f6d77f60e01b885260048801528183511660248801525116604486015265ffffffffffff604082015116606486015265ffffffffffff606082015116608486015263ffffffff60808201511660a48601526001600160701b0360a08201511660c486015263ffffffff60c08201511660e486015260018060a01b0360e082015116610104860152015161012484015260018060a01b03166101448301525afa908115610967575f91612995575b50612990575f808080806128af565b600190565b90506020813d6020116129c7575b816129b0602093836111a2565b8101031261020e576129c190611f62565b5f612981565b3d91506129a3565b505050600190565b90506020813d602011612a09575b816129f2602093836111a2565b8101031261020e57612a0390611f62565b5f612849565b3d91506129e5565b519065ffffffffffff8216820361020e57565b519063ffffffff8216820361020e57565b91908261012091031261020e57604051612a4e816110e2565b8092612a5981612a11565b8252612a6760208201612a11565b6020830152612a7860408201612a11565b6040830152612a8960608201612a11565b6060830152612a9a60808201612a24565b608083015260a08101516001600160701b038116810361020e5760a0830152612ac560c08201612a24565b60c083015260e08101516001600160a01b038116810361020e5760e083015261010090810151910152565b519061ffff8216820361020e57565b60405190612b0e6020836111a2565b5f80835282815b828110612b2157505050565b602090604051612b3081611135565b5f81525f838201525f60408201525f606082015282828501015201612b15565b3d15612b7a573d90612b61826118af565b91612b6f60405193846111a2565b82523d5f602084013e565b606090565b6040516320c94b1360e11b815260048101829052610380816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91612c9e575b50815f525f60205265ffffffffffff602060405f20920151165f5260205260405f2060405190612c03826110fe565b5460ff60018060a01b03821691828452818160a01c161515602085015260a81c161515604083015215612c94575160405163b64ce2c360e01b602082019081526024808301949094529281525f9283926001600160a01b031691612c686044826111a2565b51915afa612c74612b50565b9015612c8757612c8390614df4565b9091565b50612c90612aff565b5f91565b5050612c90612aff565b90506103803d8111612e4b575b612cb581836111a2565b81019080820391610380831261020e57612cd26102609183612a35565b9261011f19011261020e57610240612e4261036060405193612cf385611119565b612d006101208201612af0565b8552612d0f6101408201612af0565b6020860152612d216101608201612a24565b6040860152612d336101808201611f62565b6060860152612d456101a08201611f62565b6080860152612d576101c08201611f62565b60a0860152612d696101e08201611f62565b60c0860152612d7b6102008201611f62565b60e0860152612d8d6102208201611f62565b610100860152612d9e848201611f62565b610120860152612db16102608201611f62565b610140860152612dc46102808201611f62565b610160860152612dd76102a08201611f62565b610180860152612dea6102c08201611f62565b6101a0860152612dfd6102e08201611f62565b6101c0860152612e106103008201611f62565b6101e0860152612e236103208201611f62565b610200860152612e366103408201611d2f565b61022086015201612af0565b9101525f612bd4565b503d612cab565b919060a08382031261020e578251926020810151926040820151926060830151926080810151906001600160401b03821161020e57019080601f8301121561020e57815191612ea0836111c3565b92612eae60405194856111a2565b80845260208085019160051b8301019183831161020e5760208101915b838310612eda57505050505090565b82516001600160401b03811161020e578201906080828703601f19011261020e5760405190612f0882611135565b60208301516001600160a01b038116810361020e578252612f2b60408401611f62565b6020830152606083015160408301526080830151916001600160401b03831161020e57612f6088602080969581960101611f6f565b6060820152815201920191612ecb565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919060609060208301908135908116810361020e57604080516383db9d0160e01b81529085013560048201526001600160a01b03919091166024820152602081604481885afa908115610967575f916136a1575b50613688576101608301359384608085013593849560a08101359485936101208301359561014084013580159081150361020e5761356d575b5060209060609560408501355f526001835260405f209a878601359b8c5f52845260405f206040519061305a826110b3565b546001600160a01b03811680835260a09190911c60ff161515959091018590528015159485613565575b508461343d575b5060609b60408701355f525f60205260405f20815f5260205260405f2094604051956130b6876110fe565b549060ff60018060a01b03831692838952818160a01c16151560208a015260a81c16151590816040890152159182613433575b508161342b575b50613225575b505050505050508151159081809261321c575b61320e5750158080613204575b156131e657508451600101968760011161219f57613133886111c3565b97613141604051998a6111a2565b808952613150601f19916111c3565b015f5b8181106131cf575050613166889261215d565b516131708961215d565b5261317a8861215d565b505f5b86518110156131be57613190818861217e565b519080600101918260011161219f57826131b7916131b06001958e61217e565b528b61217e565b500161317d565b5092959194509295505b9493929190565b6020906131da611f3e565b82828d01015201613153565b9692959396949091945f146131fc5750916131c8565b9050916131c8565b5085511515613116565b969794969395509193915050565b50865115613109565b6101c087989e9d979c999c36031261020e57613257604051966132478861116b565b6132508a611072565b8852611072565b60208701526040880135604087015286860152608085015260a08401526132813660c087016121b3565b60c0840152613293610140860161120d565b60e08401526101008301526132ab610180850161120d565b6101208301526001600160401b036101a08501351161020e575f946132db6101209536906101a0810135016118ca565b610140840190815261010084019a8b526080840191825260a0840189815260c08501805187018a9052935160408051633d9cab2b60e21b815260206004820181905288516001600160a01b039081166024840152818a015181166044840152838a01516064840152998901516084830152955160a4820152925160c484015294518051881660e48401529384015160ff166101048301529383015163ffffffff166101248201526060929092015161014483015260e084015115156101648301529951610184820152939091015115156101a484015296516101c06101c484015291968792911690829081906133d6906101e4830190611d0b565b03915afa928315610967575f935f955f916133fc575b509493955f8080808080806130f6565b9194505061341d9194503d805f833e61341581836111a2565b810190612e52565b96939150509390945f6133ec565b90505f6130f0565b151591505f6130e9565b604051633d9cab2b60e21b815260206004820152919d939b929a5093985096505f92879290916001600160a01b0361347488611072565b1660248501526001600160a01b0361348b87611072565b166044850152604087013560648501528c608485015260a48401528960c48401526134bc60e4840160c088016120c1565b6134c9610140870161120d565b15156101648401526101848301526134e4610180860161120d565b15156101a483015281806135136134ff6101a089018961210c565b6101c06101c48501526101e484019161213d565b03915afa948515610967575f975f975f975f975f91613539575b50969798999b5f61308b565b939a5050965096506135569194503d805f833e61341581836111a2565b9399929891979096935f61352d565b94505f613084565b6040805163139db5a960e31b815290850135600482015290979196916020826024818c5afa908115610967575f91613652575b6135aa9250612204565b9660e084013560ff811680910361020e576101008501359063ffffffff821680920361020e576064602092604051948593849263622c574160e11b845260408b01356004850152602484015260448301525afa908115610967575f9161361f575b5061361890602092612204565b9590613028565b90506020813d60201161364a575b8161363a602093836111a2565b8101031261020e5751602061360b565b3d915061362d565b90506020823d602011613680575b8161366d602093836111a2565b8101031261020e576135aa9151906135a0565b3d9150613660565b505f936080830135935060a08301359261012001359190565b90506020813d6020116136d3575b816136bc602093836111a2565b8101031261020e576136cd90611f62565b5f612fef565b3d91506136af565b90602080835192838152019201905f5b8181106136f85750505090565b909192602060c0600192865163ffffffff81511682526001600160401b03848201511684830152848060a01b03604082015116604083015260608101511515606083015265ffffffffffff608082015116608083015260a08580821b039101511660a082015201940191019190916136eb565b90602080835192838152019201905f5b8181106137885750505090565b825180516001600160e01b0316855260209081015163ffffffff16818601526040909401939092019160010161377b565b9080602083519182815201916020808360051b8301019401925f915b8383106137e457505050505090565b9091929394601f19828203018352855161034082019065ffffffffffff815116835263ffffffff60208201511660208401526001600160701b03604082015116604084015263ffffffff606082015116606084015260018060a01b03608082015116608084015261ffff61024060a08301518281511660a08701528260208201511660c087015263ffffffff60408201511660e0870152606081015115156101008701526080810151151561012087015260a0810151151561014087015260c0810151151561016087015260e0810151151561018087015261010081015115156101a087015261012081015115156101c087015261014081015115156101e0870152610160810151151561020087015261018081015115156102208701526101a08101511515828701526101c081015115156102608701526101e0810151151561028087015261020081015115156102a087015260018060a01b03610220820151166102c08701520151166102e084015260c0810151916103406103008501528251809152610360840160206103608360051b8701019401915f5b818110613a3f575050505060e0015191610320818303910152815180825260208201906020808260051b8501019401925f5b8281106139d2575050505050602080600192970193019301919392906137d5565b9091929394602080613a32600193601f19878203018952895190858060a01b038251168152858060a01b038483015116848201526060613a21604084015160806040850152608084019061376b565b92015190606081840391015261376b565b97019501939291016139b1565b90919294602080613a6e60019361035f198b82030188526040838b5180518452015191818582015201906136db565b9701940192910161397f565b98979596949391613aaa93613a9c928b5260a060208c015260a08b019161213d565b9088820360408a01526137b9565b938685036060880152808552602085019460208260051b82010195835f92603e1982360301905b858510613af157505050505050508460806118ac9596850391015261213d565b90919293949598601f1982820301855289358381121561020e57604082019190850180356001600160a01b0381169081900361020e57606091613b3a9184526020810190611df9565b60406020850152938490529101915f905b808210613b6c575050506020806001929b0195019501939594929190613ad1565b909192606080600192838060a01b03613b8488611072565b16815260ff613b956020890161190e565b16602082015263ffffffff613bac604089016111ed565b166040820152019401920190613b4b565b949892999697606098613bd6613bd1615768565b614fbe565b5f98906001600160a01b03166001600160a01b03198a5c1617895d60405163180e2b1160e31b81523060048201529b60208d602481347f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af1978815610967578e9d5f99613f0f575b50908894939291859f6bffffffffffffffffffffffff60a01b5f5c165f5d613c6f87615042565b613c799087615210565b9e8f9060200151151590613c8d9288615544565b6040516307128b6b60e31b8152978897613caa9760048a01613a7a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031691839103815a6020945f91f1801561096757613ee0575b50613cf58261513c565b6001600160a01b038716803b1561020e575f80916024604051809481936351106b4b60e11b83528860048401525af1801561096757613ecb575b50602081013580613dfa575b50507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163b15613df657604051632142170760e11b81523060048201526001600160a01b03928316602482015260448101919091529082908290606490829084907f0000000000000000000000000000000000000000000000000000000000000000165af18015613deb57613dd6575050565b613de18280926111a2565b613de85750565b80fd5b6040513d84823e3d90fd5b8280fd5b829650613e4090613e0e8387949587614bde565b6108ba6108c8613e1c615768565b60408051602081019586526001600160a01b03909216908201529182906060820190565b92613e606040519485938493639d7f900160e01b85528b60048601611e2d565b0381837f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af1908115613ec0578391613ea6575b50935f80613d3b565b613eba91503d8085833e61095981836111a2565b5f613e9d565b6040513d85823e3d90fd5b613ed89194505f906111a2565b5f925f613d2f565b6020813d602011613f07575b81613ef9602093836111a2565b8101031261020e5751613ceb565b3d9150613eec565b9d5093929190975060208d3d602011613f46575b81613f30602093836111a2565b8101031261020e578d9c5197909192935f613c48565b3d9150613f23565b90604051613f5b816110fe565b604051613f6781611150565b6060815260606020820152606060408201525f606082015260606080820152604051613f92816110fe565b606081525f60208201525f604082015260a0820152604051613fb381611187565b5f81525f60208201525f60408201525f60608201525f608082015260c082015281525f60208201525f6040820152809280518015614019575060a060129263ffffffff604083614003829661215d565b5101510151166020838351015101525101510152565b6328a3030960e21b5f5260045260245ffd5b9081602091031261020e57516001600160a01b038116810361020e5790565b6040516331a9108f60e11b81526004810182905291945f949093929091906020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916146b7575b506140b1615768565b6001600160a01b03918216911680821415806145fe575b6145d45750506140d781615042565b60405163d4a1b4b160e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169390602081600481885afa908115610967576024916020915f916145b7575b506040516319fade8560e11b81526004810186905292839182906001600160a01b03165afa908115610967575f91614585575b504281101561456b5750865160a0015151511561429d576141818783615210565b966001600160a01b03881690813b1561020e575f80926024604051809581936351106b4b60e11b83528960048401525af191821561096757899261426c575b509261421d6141e061420b96948a946020809a9801511515915b85615544565b93604051988997889687956303141db760e41b875260048701526060602487015260648601906137b9565b8481036003190160448601529161213d565b03925af19182156142605791614231575091565b90506020813d602011614258575b8161424c602093836111a2565b8101031261020e575191565b3d915061423f565b604051903d90823e3d90fd5b602098508896949192506141e061420b969461428b5f61421d946111a2565b8b5f9b509493969850949650506141c0565b60405163d4a1b4b160e01b8152909650602081600481875afa90811561096757602491610140915f9161454c575b5060405163855a54ed60e01b81526004810185905292839182906001600160a01b03165afa908115610967575f905f926144ff575b506020019065ffffffffffff825116151590816144c4575b5080614494575b156143ae575165ffffffffffff16955b815f52600160205260405f20875f5260205260405f209660405197614353896110b3565b549060ff602060018060a01b0384169a8b8152019260a01c16151582528880156143945750506020949261421d6141e061420b96948b8b95511515916141da565b8490630b77705360e01b5f5260045260245260445260645ffd5b5060405163d4a1b4b160e01b8152602081600481875afa90811561096757602491610120915f91614465575b506040516321d1336160e11b81526004810185905292839182906001600160a01b03165afa908115610967575f91614420575b506020015165ffffffffffff169561432f565b90506101203d811161445e575b61443781836111a2565b81016101208282031261020e5761445760209165ffffffffffff93612a35565b915061440d565b503d61442d565b614487915060203d60201161448d575b61447f81836111a2565b81019061402b565b5f6143da565b503d614475565b50815f52600160205260405f2065ffffffffffff8251165f5260205260018060a01b0360405f205416151561431f565b905060068110156144eb57600481149081156144e2575b505f614318565b9050155f6144db565b634e487b7160e01b5f52602160045260245ffd5b9150506101403d8111614545575b61451781836111a2565b81016101408282031261020e576145316101209183612a35565b91015190600682101561020e576020614300565b503d61450d565b614565915060203d60201161448d5761447f81836111a2565b5f6142cb565b8263b357f5c560e01b5f526004526024524260445260645ffd5b90506020813d6020116145af575b816145a0602093836111a2565b8101031261020e57515f614160565b3d9150614593565b6145ce9150823d841161448d5761447f81836111a2565b5f61412d565b9160849260405192631326f75560e11b845260048401526024830152604482015260026064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018490526002606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f9161467d575b50156140c8565b90506020813d6020116146af575b81614698602093836111a2565b8101031261020e576146a990611f62565b5f614676565b3d915061468b565b90506020813d6020116146e9575b816146d2602093836111a2565b8101031261020e576146e390611d2f565b5f6140a8565b3d91506146c5565b9896979092949795939195604051946331a9108f60e11b86525f958b600482015260208160248160018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa908115610967575f91614ba4575b5061475a615768565b6001600160a01b0391821691168082141580614aeb575b614ac057506001600160a01b03614786615768565b168181141580614a07575b6149dc5750886148d3575b506147a68b615042565b6147b0878c615210565b996001600160a01b038b1694853b1561020e575f809660248f604051998a9384926351106b4b60e11b845260048401525af18015610967578d968d916148a6575b50614829959493929161480e916020809b9c015115159189615544565b6040516307128b6b60e31b81529a8b98899860048a01613a7a565b0381847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af19081156142605790614872575b61487091509361513c565b565b506020813d60201161489e575b8161488c602093836111a2565b8101031261020e576148709051614865565b3d915061487f565b6020995061480e9150916148c15f61482998979695946111a2565b8d8a5f9b5050915091929394956147f1565b6001600160a01b036148e3615768565b168181141580614923575b6148f8575061479c565b908c60849260405192631326f75560e11b845260048401526024830152604482015260076064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018e90526007606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916149a2575b50156148ee565b90506020813d6020116149d4575b816149bd602093836111a2565b8101031261020e576149ce90611f62565b5f61499b565b3d91506149b0565b908c60849260405192631326f75560e11b8452600484015260248301526044820152600f6064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018e9052600f606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91614a86575b5015614791565b90506020813d602011614ab8575b81614aa1602093836111a2565b8101031261020e57614ab290611f62565b5f614a7f565b3d9150614a94565b908c60849260405192631326f75560e11b845260048401526024830152604482015260036064820152fd5b50604051631a45b42760e11b81526004810182905260248101839052604481018e90526003606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91614b6a575b5015614771565b90506020813d602011614b9c575b81614b85602093836111a2565b8101031261020e57614b9690611f62565b5f614b63565b3d9150614b78565b90506020813d602011614bd6575b81614bbf602093836111a2565b8101031261020e57614bd090611d2f565b5f614751565b3d9150614bb2565b905f5b614beb8480611d43565b9050811015614d3957614bfe8480611d43565b82101561216a578160051b810135605e198236030181121561020e570160200135614c2b57600101614be1565b50909150614c37615768565b6001600160a01b0392831692168083141580614c81575b614c5757505050565b6084935060405192631326f75560e11b845260048401526024830152604482015260226064820152fd5b50604051631a45b42760e11b81526004810182905260248101849052604481018390526022606482015260016084820181905260a482015260208160c4817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f91614d00575b5015614c4e565b90506020813d8211614d31575b81614d1a602093836111a2565b8101031261020e57614d2b90611f62565b5f614cf9565b3d9150614d0d565b50505050565b90915f198383099280830292838086109503948086039514614dd25782851015614dba5790829109600182190182168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b630c740aef60e31b5f5260045260245260445260645ffd5b505091508115614de0570490565b634e487b7160e01b5f52601260045260245ffd5b6060815110612c8757602081015191604082015191604083108015614fb2575b8015614f9c575b614f905760208382010151906020840180941161219f57614e3d848251612192565b60071c8211614f8357614e4f826111c3565b614e5c60405191826111a2565b828152601f19614e6b846111c3565b015f5b818110614f54575050935f5b838110614e875750505050565b8060071b8181046080148215171561219f57614ea39083612204565b8301602081015190604081015190608060608201519101519160ff81118015614f44575b8015614f34575b614f2157916001600160801b03809260ff600197969560405196614ef188611135565b8752166020860152166040840152166060820152614f0f828961217e565b52614f1a818861217e565b5001614e7a565b5050505050505050915050612c90612aff565b506001600160801b038311614ece565b506001600160801b038211614ec7565b602090604051614f6381611135565b5f81525f838201525f60408201525f606082015282828601015201614e6e565b5050915050612c90612aff565b50915050612c90612aff565b508051601f19810190811161219f578311614e1b565b50601f83161515614e14565b803b156118ac575f80604051602081019063296eee5160e01b825260048152614fe86024826111a2565b5190845afa614ff5612b50565b90158015615037575b6150335760208180518101031261020e576001600160a01b039061502490602001611d2f565b168061502e575090565b905090565b5090565b506020815110614ffe565b604051632eec7b5560e11b8152600481018290526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916150fa575b506001600160a01b03169081156150f6577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316908183036150de57505050565b637da4da8b60e01b5f5260045260245260445260645ffd5b5050565b90506020813d602011615134575b81615115602093836111a2565b8101031261020e57516001600160a01b038116810361020e575f615096565b3d9150615108565b604051632eec7b5560e11b8152600481018290526020816024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610967575f916151ce575b506001600160a01b03908116917f0000000000000000000000000000000000000000000000000000000000000000909116908183036150de57505050565b90506020813d602011615208575b816151e9602093836111a2565b8101031261020e57516001600160a01b038116810361020e575f615190565b3d91506151dc565b906040815191015180155f1461550957505f915b6040519283916337b4a3c360e11b83526004830152606060248301526152b661528d615277615261865161016060648801526101c4870190611d0b565b6020870151868203606319016084880152611d0b565b60408601518582036063190160a4870152611d0b565b60608501516001600160a01b031660c485015260808501518482036063190160e4860152611d0b565b9260a0810151936063198482030161010485015260608101948051956060835286518091526080830190602060808260051b8601019801915f905b8282106153e0575050505060c060209693869593604060ff818663ffffffff8d6080990151168d8601520151169101520151805115156101248601528681015115156101448601526040810151151561016486015260608101511515610184860152015115156101a4840152604483015203815f60018060a01b037f0000000000000000000000000000000000000000000000000000000000000000165af1908115610967575f916153a1575090565b90506020813d6020116153d8575b816153bc602093836111a2565b8101031261020e57516001600160a01b038116810361020e5790565b3d91506153af565b9193949596975091976020806154f66001936102206101408e607f198d8503018952516cffffffffffffffffffffffffff815116845263ffffffff86820151168685015263ffffffff604082015116604085015261ffff6060820151166060850152878060a01b03608082015116608085015260a081015160a085015262ffffff60c08201511660c085015260ff60e08201511660e085015260c0610100820151805115156101008701528781015115156101208701526040810151151584870152606081015115156101608701526080810151151561018087015260a081015115156101a0870152015115156101c085015263ffffffff610120820151166101e08501520151918161020082015201906136db565b9a019201920189979695949391926152f1565b615511615768565b604080516001600160a01b039092166020830190815282820193909352815261553b6060826111a2565b51902091615224565b90919392935f5b83518110156157605761555e8142612204565b306001600160a01b0361022060a0615576868a61217e565b5101510151161461572a57906001916155ee604051615594816110b3565b60a085811b86900387811683528b151560208085019182525f8b815289825260408082208983529092522093518454915160ff60a01b1991909316166001600160a81b03199091161790151590911b60ff60a01b16179055565b828060a01b0361022060a0615603858a61217e565b510151015116615654575b503061022060a061561f848961217e565b5101510152816101e060a0615634848961217e565b51015101528161020060a0615649848961217e565b51015101520161554b565b828060a01b0361022060a0615669858a61217e565b5101510151169061570b6101e060a0615682868b61217e565b5101510151151561020060a0615698878c61217e565b5101510151151592604051946156ad866110fe565b8552602080860192835260408087019586525f8b815280835281812093815292909152902093518454915160ff60a01b1960a089811b8a900393909316166001600160a81b031990931692909217911515901b60ff60a01b16178355565b51815460ff60a81b191690151560a81b60ff60a81b161790555f61560e565b836001600160a01b0361022060a0615742868a61217e565b510151015116630b77705360e01b5f5260045260245260445260645ffd5b509193505050565b60143610158061578f575b1561578b57601319360136811161020e573560601c90565b3390565b50337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461577356fea164736f6c634300081c000a",
|
|
3502
|
+
"metadata": "{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IJBSuckerRegistry\",\"name\":\"suckerRegistry\",\"type\":\"address\"},{\"internalType\":\"contract IJB721TiersHookDeployer\",\"name\":\"hookDeployer\",\"type\":\"address\"},{\"internalType\":\"contract IJBPermissions\",\"name\":\"permissions\",\"type\":\"address\"},{\"internalType\":\"contract IJBController\",\"name\":\"controller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"trustedForwarder\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"expectedController\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"actualController\",\"type\":\"address\"}],\"type\":\"error\",\"name\":\"JBOmnichainDeployer_ControllerMismatch\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"}],\"type\":\"error\",\"name\":\"JBOmnichainDeployer_InvalidHook\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"rulesetConfigurationCount\",\"type\":\"uint256\"}],\"type\":\"error\",\"name\":\"JBOmnichainDeployer_NoRulesetConfigurations\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"latestRulesetId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"currentTimestamp\",\"type\":\"uint256\"}],\"type\":\"error\",\"name\":\"JBOmnichainDeployer_RulesetIdsUnpredictable\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"type\":\"error\",\"name\":\"JBOmnichainDeployer_UnexpectedNFTReceived\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"permissionId\",\"type\":\"uint256\"}],\"type\":\"error\",\"name\":\"JBPermissioned_Unauthorized\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"denominator\",\"type\":\"uint256\"}],\"type\":\"error\",\"name\":\"PRBMath_MulDiv_Overflow\"},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"CONTROLLER\",\"outputs\":[{\"internalType\":\"contract IJBController\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DIRECTORY\",\"outputs\":[{\"internalType\":\"contract IJBDirectory\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"HOOK_DEPLOYER\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHookDeployer\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PERMISSIONS\",\"outputs\":[{\"internalType\":\"contract IJBPermissions\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"PROJECTS\",\"outputs\":[{\"internalType\":\"contract IJBProjects\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"SUCKER_REGISTRY\",\"outputs\":[{\"internalType\":\"contract IJBSuckerRegistry\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"struct JBBeforeCashOutRecordedContext\",\"name\":\"context\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"address\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"holder\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"cashOutCount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalSupply\",\"type\":\"uint256\"},{\"internalType\":\"struct JBTokenAmount\",\"name\":\"surplus\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}]},{\"internalType\":\"bool\",\"name\":\"scopeCashOutsToLocalBalances\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"cashOutTaxRate\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"beneficiaryIsFeeless\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"metadata\",\"type\":\"bytes\"}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"beforeCashOutRecordedWith\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"cashOutTaxRate\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"cashOutCount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"totalSupply\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"effectiveSurplusValue\",\"type\":\"uint256\"},{\"internalType\":\"struct JBCashOutHookSpecification[]\",\"name\":\"hookSpecifications\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBCashOutHook\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"noop\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"metadata\",\"type\":\"bytes\"}]}]},{\"inputs\":[{\"internalType\":\"struct JBBeforePayRecordedContext\",\"name\":\"context\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"address\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"payer\",\"type\":\"address\"},{\"internalType\":\"struct JBTokenAmount\",\"name\":\"amount\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}]},{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reservedPercent\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"metadata\",\"type\":\"bytes\"}]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"beforePayRecordedWith\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"struct JBPayHookSpecification[]\",\"name\":\"hookSpecifications\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBPayHook\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"noop\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"metadata\",\"type\":\"bytes\"}]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBSuckerDeploymentConfig\",\"name\":\"suckerDeploymentConfiguration\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JBSuckerDeployerConfig[]\",\"name\":\"deployerConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBSuckerDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"peer\",\"type\":\"bytes32\"},{\"internalType\":\"struct JBTokenMapping[]\",\"name\":\"mappings\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"localToken\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"minGas\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"remoteToken\",\"type\":\"bytes32\"}]}]},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"}]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"deploySuckersFor\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"suckers\",\"type\":\"address[]\"}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"extraDataHookOf\",\"outputs\":[{\"internalType\":\"struct JBDeployerHookConfig\",\"name\":\"hook\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"contract IJBRulesetDataHook\",\"name\":\"dataHook\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForPay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"}]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBRuleset\",\"name\":\"ruleset\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint48\",\"name\":\"cycleNumber\",\"type\":\"uint48\"},{\"internalType\":\"uint48\",\"name\":\"id\",\"type\":\"uint48\"},{\"internalType\":\"uint48\",\"name\":\"basedOnId\",\"type\":\"uint48\"},{\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"internalType\":\"uint32\",\"name\":\"duration\",\"type\":\"uint32\"},{\"internalType\":\"uint112\",\"name\":\"weight\",\"type\":\"uint112\"},{\"internalType\":\"uint32\",\"name\":\"weightCutPercent\",\"type\":\"uint32\"},{\"internalType\":\"contract IJBRulesetApprovalHook\",\"name\":\"approvalHook\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"metadata\",\"type\":\"uint256\"}]},{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"hasMintPermissionFor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"forwarder\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"isTrustedForwarder\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct JBOmnichain721Config\",\"name\":\"deploy721Config\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JBDeploy721TiersHookConfig\",\"name\":\"deployTiersHookConfig\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"baseUri\",\"type\":\"string\"},{\"internalType\":\"contract IJB721TokenUriResolver\",\"name\":\"tokenUriResolver\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"struct JB721InitTiersConfig\",\"name\":\"tiersConfig\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JB721TierConfig[]\",\"name\":\"tiers\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint104\",\"name\":\"price\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"initialSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"votingUnits\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"reserveFrequency\",\"type\":\"uint16\"},{\"internalType\":\"address\",\"name\":\"reserveBeneficiary\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"encodedIpfsUri\",\"type\":\"bytes32\"},{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint8\",\"name\":\"discountPercent\",\"type\":\"uint8\"},{\"internalType\":\"struct JB721TierConfigFlags\",\"name\":\"flags\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"bool\",\"name\":\"allowOwnerMint\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useReserveBeneficiaryAsDefault\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"transfersPausable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useVotingUnits\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantBeRemoved\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantIncreaseDiscountPercent\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantBuyWithCredits\",\"type\":\"bool\"}]},{\"internalType\":\"uint32\",\"name\":\"splitPercent\",\"type\":\"uint32\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"}]},{\"internalType\":\"struct JB721TiersHookFlags\",\"name\":\"flags\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"bool\",\"name\":\"noNewTiersWithReserves\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"noNewTiersWithVotes\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"noNewTiersWithOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"preventOverspending\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"issueTokensForSplits\",\"type\":\"bool\"}]}]},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"}]},{\"internalType\":\"struct JBRulesetConfig[]\",\"name\":\"rulesetConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint48\",\"name\":\"mustStartAtOrAfter\",\"type\":\"uint48\"},{\"internalType\":\"uint32\",\"name\":\"duration\",\"type\":\"uint32\"},{\"internalType\":\"uint112\",\"name\":\"weight\",\"type\":\"uint112\"},{\"internalType\":\"uint32\",\"name\":\"weightCutPercent\",\"type\":\"uint32\"},{\"internalType\":\"contract IJBRulesetApprovalHook\",\"name\":\"approvalHook\",\"type\":\"address\"},{\"internalType\":\"struct JBRulesetMetadata\",\"name\":\"metadata\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint16\",\"name\":\"reservedPercent\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"cashOutTaxRate\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"baseCurrency\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"pausePay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"pauseCreditTransfers\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetCustomToken\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowTerminalMigration\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetTerminals\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetController\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddAccountingContext\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddPriceFeed\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"ownerMustSendPayouts\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"holdFees\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"scopeCashOutsToLocalBalances\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForPay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"dataHook\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"metadata\",\"type\":\"uint16\"}]},{\"internalType\":\"struct JBSplitGroup[]\",\"name\":\"splitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"groupId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"struct JBFundAccessLimitGroup[]\",\"name\":\"fundAccessLimitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"payoutLimits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"surplusAllowances\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]}]},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"memo\",\"type\":\"string\"},{\"internalType\":\"struct JBSuckerDeploymentConfig\",\"name\":\"suckerDeploymentConfiguration\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JBSuckerDeployerConfig[]\",\"name\":\"deployerConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBSuckerDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"peer\",\"type\":\"bytes32\"},{\"internalType\":\"struct JBTokenMapping[]\",\"name\":\"mappings\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"localToken\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"minGas\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"remoteToken\",\"type\":\"bytes32\"}]}]},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"}]}],\"stateMutability\":\"payable\",\"type\":\"function\",\"name\":\"launchProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"suckers\",\"type\":\"address[]\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct JBRulesetConfig[]\",\"name\":\"rulesetConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint48\",\"name\":\"mustStartAtOrAfter\",\"type\":\"uint48\"},{\"internalType\":\"uint32\",\"name\":\"duration\",\"type\":\"uint32\"},{\"internalType\":\"uint112\",\"name\":\"weight\",\"type\":\"uint112\"},{\"internalType\":\"uint32\",\"name\":\"weightCutPercent\",\"type\":\"uint32\"},{\"internalType\":\"contract IJBRulesetApprovalHook\",\"name\":\"approvalHook\",\"type\":\"address\"},{\"internalType\":\"struct JBRulesetMetadata\",\"name\":\"metadata\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint16\",\"name\":\"reservedPercent\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"cashOutTaxRate\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"baseCurrency\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"pausePay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"pauseCreditTransfers\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetCustomToken\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowTerminalMigration\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetTerminals\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetController\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddAccountingContext\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddPriceFeed\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"ownerMustSendPayouts\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"holdFees\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"scopeCashOutsToLocalBalances\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForPay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"dataHook\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"metadata\",\"type\":\"uint16\"}]},{\"internalType\":\"struct JBSplitGroup[]\",\"name\":\"splitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"groupId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"struct JBFundAccessLimitGroup[]\",\"name\":\"fundAccessLimitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"payoutLimits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"surplusAllowances\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]}]},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"memo\",\"type\":\"string\"},{\"internalType\":\"struct JBSuckerDeploymentConfig\",\"name\":\"suckerDeploymentConfiguration\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JBSuckerDeployerConfig[]\",\"name\":\"deployerConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBSuckerDeployer\",\"name\":\"deployer\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"peer\",\"type\":\"bytes32\"},{\"internalType\":\"struct JBTokenMapping[]\",\"name\":\"mappings\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"localToken\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"minGas\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"remoteToken\",\"type\":\"bytes32\"}]}]},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"}]}],\"stateMutability\":\"payable\",\"type\":\"function\",\"name\":\"launchProjectFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"suckers\",\"type\":\"address[]\"}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct JBRulesetConfig[]\",\"name\":\"rulesetConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint48\",\"name\":\"mustStartAtOrAfter\",\"type\":\"uint48\"},{\"internalType\":\"uint32\",\"name\":\"duration\",\"type\":\"uint32\"},{\"internalType\":\"uint112\",\"name\":\"weight\",\"type\":\"uint112\"},{\"internalType\":\"uint32\",\"name\":\"weightCutPercent\",\"type\":\"uint32\"},{\"internalType\":\"contract IJBRulesetApprovalHook\",\"name\":\"approvalHook\",\"type\":\"address\"},{\"internalType\":\"struct JBRulesetMetadata\",\"name\":\"metadata\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint16\",\"name\":\"reservedPercent\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"cashOutTaxRate\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"baseCurrency\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"pausePay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"pauseCreditTransfers\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetCustomToken\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowTerminalMigration\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetTerminals\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetController\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddAccountingContext\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddPriceFeed\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"ownerMustSendPayouts\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"holdFees\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"scopeCashOutsToLocalBalances\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForPay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"dataHook\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"metadata\",\"type\":\"uint16\"}]},{\"internalType\":\"struct JBSplitGroup[]\",\"name\":\"splitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"groupId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"struct JBFundAccessLimitGroup[]\",\"name\":\"fundAccessLimitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"payoutLimits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"surplusAllowances\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]}]},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"memo\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"launchRulesetsFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"projectUri\",\"type\":\"string\"},{\"internalType\":\"struct JBOmnichain721Config\",\"name\":\"deploy721Config\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JBDeploy721TiersHookConfig\",\"name\":\"deployTiersHookConfig\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"baseUri\",\"type\":\"string\"},{\"internalType\":\"contract IJB721TokenUriResolver\",\"name\":\"tokenUriResolver\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"struct JB721InitTiersConfig\",\"name\":\"tiersConfig\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JB721TierConfig[]\",\"name\":\"tiers\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint104\",\"name\":\"price\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"initialSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"votingUnits\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"reserveFrequency\",\"type\":\"uint16\"},{\"internalType\":\"address\",\"name\":\"reserveBeneficiary\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"encodedIpfsUri\",\"type\":\"bytes32\"},{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint8\",\"name\":\"discountPercent\",\"type\":\"uint8\"},{\"internalType\":\"struct JB721TierConfigFlags\",\"name\":\"flags\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"bool\",\"name\":\"allowOwnerMint\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useReserveBeneficiaryAsDefault\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"transfersPausable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useVotingUnits\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantBeRemoved\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantIncreaseDiscountPercent\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantBuyWithCredits\",\"type\":\"bool\"}]},{\"internalType\":\"uint32\",\"name\":\"splitPercent\",\"type\":\"uint32\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"}]},{\"internalType\":\"struct JB721TiersHookFlags\",\"name\":\"flags\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"bool\",\"name\":\"noNewTiersWithReserves\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"noNewTiersWithVotes\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"noNewTiersWithOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"preventOverspending\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"issueTokensForSplits\",\"type\":\"bool\"}]}]},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"}]},{\"internalType\":\"struct JBRulesetConfig[]\",\"name\":\"rulesetConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint48\",\"name\":\"mustStartAtOrAfter\",\"type\":\"uint48\"},{\"internalType\":\"uint32\",\"name\":\"duration\",\"type\":\"uint32\"},{\"internalType\":\"uint112\",\"name\":\"weight\",\"type\":\"uint112\"},{\"internalType\":\"uint32\",\"name\":\"weightCutPercent\",\"type\":\"uint32\"},{\"internalType\":\"contract IJBRulesetApprovalHook\",\"name\":\"approvalHook\",\"type\":\"address\"},{\"internalType\":\"struct JBRulesetMetadata\",\"name\":\"metadata\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint16\",\"name\":\"reservedPercent\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"cashOutTaxRate\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"baseCurrency\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"pausePay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"pauseCreditTransfers\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetCustomToken\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowTerminalMigration\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetTerminals\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetController\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddAccountingContext\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddPriceFeed\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"ownerMustSendPayouts\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"holdFees\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"scopeCashOutsToLocalBalances\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForPay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"dataHook\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"metadata\",\"type\":\"uint16\"}]},{\"internalType\":\"struct JBSplitGroup[]\",\"name\":\"splitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"groupId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"struct JBFundAccessLimitGroup[]\",\"name\":\"fundAccessLimitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"payoutLimits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"surplusAllowances\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]}]},{\"internalType\":\"struct JBTerminalConfig[]\",\"name\":\"terminalConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"contract IJBTerminal\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"struct JBAccountingContext[]\",\"name\":\"accountingContextsToAccept\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]},{\"internalType\":\"string\",\"name\":\"memo\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"launchRulesetsFor\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"originalPayer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"peerChainAdjustedAccountsOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"supply\",\"type\":\"uint256\"},{\"internalType\":\"struct JBSourceContext[]\",\"name\":\"contexts\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"bytes32\",\"name\":\"token\",\"type\":\"bytes32\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"},{\"internalType\":\"uint128\",\"name\":\"surplus\",\"type\":\"uint128\"},{\"internalType\":\"uint128\",\"name\":\"balance\",\"type\":\"uint128\"}]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBRulesetConfig[]\",\"name\":\"rulesetConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint48\",\"name\":\"mustStartAtOrAfter\",\"type\":\"uint48\"},{\"internalType\":\"uint32\",\"name\":\"duration\",\"type\":\"uint32\"},{\"internalType\":\"uint112\",\"name\":\"weight\",\"type\":\"uint112\"},{\"internalType\":\"uint32\",\"name\":\"weightCutPercent\",\"type\":\"uint32\"},{\"internalType\":\"contract IJBRulesetApprovalHook\",\"name\":\"approvalHook\",\"type\":\"address\"},{\"internalType\":\"struct JBRulesetMetadata\",\"name\":\"metadata\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint16\",\"name\":\"reservedPercent\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"cashOutTaxRate\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"baseCurrency\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"pausePay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"pauseCreditTransfers\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetCustomToken\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowTerminalMigration\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetTerminals\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetController\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddAccountingContext\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddPriceFeed\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"ownerMustSendPayouts\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"holdFees\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"scopeCashOutsToLocalBalances\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForPay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"dataHook\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"metadata\",\"type\":\"uint16\"}]},{\"internalType\":\"struct JBSplitGroup[]\",\"name\":\"splitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"groupId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"struct JBFundAccessLimitGroup[]\",\"name\":\"fundAccessLimitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"payoutLimits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"surplusAllowances\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]}]},{\"internalType\":\"string\",\"name\":\"memo\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"queueRulesetsOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBOmnichain721Config\",\"name\":\"deploy721Config\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JBDeploy721TiersHookConfig\",\"name\":\"deployTiersHookConfig\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"baseUri\",\"type\":\"string\"},{\"internalType\":\"contract IJB721TokenUriResolver\",\"name\":\"tokenUriResolver\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"contractUri\",\"type\":\"string\"},{\"internalType\":\"struct JB721InitTiersConfig\",\"name\":\"tiersConfig\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"struct JB721TierConfig[]\",\"name\":\"tiers\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint104\",\"name\":\"price\",\"type\":\"uint104\"},{\"internalType\":\"uint32\",\"name\":\"initialSupply\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"votingUnits\",\"type\":\"uint32\"},{\"internalType\":\"uint16\",\"name\":\"reserveFrequency\",\"type\":\"uint16\"},{\"internalType\":\"address\",\"name\":\"reserveBeneficiary\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"encodedIpfsUri\",\"type\":\"bytes32\"},{\"internalType\":\"uint24\",\"name\":\"category\",\"type\":\"uint24\"},{\"internalType\":\"uint8\",\"name\":\"discountPercent\",\"type\":\"uint8\"},{\"internalType\":\"struct JB721TierConfigFlags\",\"name\":\"flags\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"bool\",\"name\":\"allowOwnerMint\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useReserveBeneficiaryAsDefault\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"transfersPausable\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useVotingUnits\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantBeRemoved\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantIncreaseDiscountPercent\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"cantBuyWithCredits\",\"type\":\"bool\"}]},{\"internalType\":\"uint32\",\"name\":\"splitPercent\",\"type\":\"uint32\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"},{\"internalType\":\"uint8\",\"name\":\"decimals\",\"type\":\"uint8\"}]},{\"internalType\":\"struct JB721TiersHookFlags\",\"name\":\"flags\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"bool\",\"name\":\"noNewTiersWithReserves\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"noNewTiersWithVotes\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"noNewTiersWithOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"preventOverspending\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"issueTokensForSplits\",\"type\":\"bool\"}]}]},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"bytes32\",\"name\":\"salt\",\"type\":\"bytes32\"}]},{\"internalType\":\"struct JBRulesetConfig[]\",\"name\":\"rulesetConfigurations\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint48\",\"name\":\"mustStartAtOrAfter\",\"type\":\"uint48\"},{\"internalType\":\"uint32\",\"name\":\"duration\",\"type\":\"uint32\"},{\"internalType\":\"uint112\",\"name\":\"weight\",\"type\":\"uint112\"},{\"internalType\":\"uint32\",\"name\":\"weightCutPercent\",\"type\":\"uint32\"},{\"internalType\":\"contract IJBRulesetApprovalHook\",\"name\":\"approvalHook\",\"type\":\"address\"},{\"internalType\":\"struct JBRulesetMetadata\",\"name\":\"metadata\",\"type\":\"tuple\",\"components\":[{\"internalType\":\"uint16\",\"name\":\"reservedPercent\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"cashOutTaxRate\",\"type\":\"uint16\"},{\"internalType\":\"uint32\",\"name\":\"baseCurrency\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"pausePay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"pauseCreditTransfers\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowOwnerMinting\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetCustomToken\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowTerminalMigration\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetTerminals\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowSetController\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddAccountingContext\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"allowAddPriceFeed\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"ownerMustSendPayouts\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"holdFees\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"scopeCashOutsToLocalBalances\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForPay\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"dataHook\",\"type\":\"address\"},{\"internalType\":\"uint16\",\"name\":\"metadata\",\"type\":\"uint16\"}]},{\"internalType\":\"struct JBSplitGroup[]\",\"name\":\"splitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint256\",\"name\":\"groupId\",\"type\":\"uint256\"},{\"internalType\":\"struct JBSplit[]\",\"name\":\"splits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint32\",\"name\":\"percent\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"projectId\",\"type\":\"uint64\"},{\"internalType\":\"address payable\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"preferAddToBalance\",\"type\":\"bool\"},{\"internalType\":\"uint48\",\"name\":\"lockedUntil\",\"type\":\"uint48\"},{\"internalType\":\"contract IJBSplitHook\",\"name\":\"hook\",\"type\":\"address\"}]}]},{\"internalType\":\"struct JBFundAccessLimitGroup[]\",\"name\":\"fundAccessLimitGroups\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"address\",\"name\":\"terminal\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"payoutLimits\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]},{\"internalType\":\"struct JBCurrencyAmount[]\",\"name\":\"surplusAllowances\",\"type\":\"tuple[]\",\"components\":[{\"internalType\":\"uint224\",\"name\":\"amount\",\"type\":\"uint224\"},{\"internalType\":\"uint32\",\"name\":\"currency\",\"type\":\"uint32\"}]}]}]},{\"internalType\":\"string\",\"name\":\"memo\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"queueRulesetsOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"},{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"}]},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"flag\",\"type\":\"bool\"}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"projectId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"rulesetId\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"tiered721HookOf\",\"outputs\":[{\"internalType\":\"contract IJB721TiersHook\",\"name\":\"hook\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"useDataHookForCashOut\",\"type\":\"bool\"}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"trustedForwarder\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}]}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"beforeCashOutRecordedWith((address,address,uint256,uint256,uint256,uint256,(address,uint8,uint32,uint256),bool,uint256,bool,bytes))\":{\"details\":\"Part of `IJBRulesetDataHook`. The 721 hook's returned `totalSupply` and `effectiveSurplusValue` are used when it handles cash outs (NFT redemptions use local denominators). Otherwise this contract's cross-chain values take precedence.\",\"params\":{\"context\":\"Standard Juicebox cash out context. See `JBBeforeCashOutRecordedContext`.\"},\"returns\":{\"cashOutCount\":\"The number of project tokens that are cashed out.\",\"cashOutTaxRate\":\"The cash out tax rate, which influences the amount of terminal tokens which get cashed out.\",\"effectiveSurplusValue\":\"The global surplus across all chains for proportional reclaim.\",\"hookSpecifications\":\"The amount of funds and the data to send to cash out hooks (this contract).\",\"totalSupply\":\"The total token supply across all chains (for both proportional reclaim and tax).\"}},\"beforePayRecordedWith((address,address,(address,uint8,uint32,uint256),uint256,uint256,address,uint256,uint256,bytes))\":{\"details\":\"Part of `IJBRulesetDataHook`. The 721 hook's weight already accounts for tier-split deductions. The extra hook receives the post-split amount so it only routes funds actually entering the project. If both return specifications, the 721 spec comes first.\",\"params\":{\"context\":\"Standard Juicebox payment context. See `JBBeforePayRecordedContext`.\"},\"returns\":{\"hookSpecifications\":\"Amounts (out of the payment) to send to pay hooks instead of the project. Useful for automatically routing funds from a treasury as payments come in.\",\"weight\":\"The weight which project tokens are minted relative to. This can be used to customize how many tokens get minted by a payment.\"}},\"constructor\":{\"params\":{\"controller\":\"The controller to use for every project launch and ruleset queue.\",\"hookDeployer\":\"The deployer to use for project's tiered ERC-721 hooks.\",\"permissions\":\"The permissions to use for the contract.\",\"suckerRegistry\":\"The registry to use for deploying and tracking each project's suckers.\",\"trustedForwarder\":\"The trusted forwarder for the ERC2771Context.\"}},\"deploySuckersFor(uint256,((address,bytes32,(address,uint32,bytes32)[])[],bytes32))\":{\"details\":\"Only the project's owner or an operator with `JBPermissionIds.DEPLOY_SUCKERS` can call this. Supplying an explicit non-default peer also requires `JBPermissionIds.SET_SUCKER_PEER`, matching the registry's direct-call authorization model. The salt includes `msg.sender` for replay protection — the same sender must call on both chains for deterministic address matching.\",\"params\":{\"projectId\":\"The ID of the project to deploy suckers for.\",\"suckerDeploymentConfiguration\":\"The suckers to set up for the project.\"},\"returns\":{\"suckers\":\"The addresses of the deployed suckers.\"}},\"extraDataHookOf(uint256,uint256)\":{\"params\":{\"projectId\":\"The ID of the project to get the extra data hook for.\",\"rulesetId\":\"The ID of the ruleset to get the extra data hook for.\"},\"returns\":{\"hook\":\"The extra data hook configured for the project/ruleset.\"}},\"hasMintPermissionFor(uint256,(uint48,uint48,uint48,uint48,uint32,uint112,uint32,address,uint256),address)\":{\"details\":\"Part of `IJBRulesetDataHook`. The 721 hook never grants mint permission, so only the extra hook is checked.\",\"params\":{\"addr\":\"The address to check the token minting permission of.\",\"projectId\":\"The ID of the project whose token can be minted.\",\"ruleset\":\"The ruleset to check the token minting permission of.\"},\"returns\":{\"_0\":\"flag A flag indicating whether the address has permission to mint the project's tokens on-demand.\"}},\"isTrustedForwarder(address)\":{\"details\":\"Indicates whether any particular address is the trusted forwarder.\"},\"launchProjectFor(address,string,((string,string,string,address,string,((uint104,uint32,uint32,uint16,address,bytes32,uint24,uint8,(bool,bool,bool,bool,bool,bool,bool),uint32,(uint32,uint64,address,bool,uint48,address)[])[],uint32,uint8),(bool,bool,bool,bool,bool)),bool,bytes32),(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],(address,(address,uint8,uint32)[])[],string,((address,bytes32,(address,uint32,bytes32)[])[],bytes32))\":{\"params\":{\"deploy721Config\":\"The 721 hook deployment config (hook config + cash-out flag + salt).\",\"memo\":\"A memo to pass along to the emitted event.\",\"owner\":\"The address to set as the owner of the project. The ERC-721 which confers this project's ownership will be sent to this address.\",\"projectUri\":\"The project's metadata URI.\",\"rulesetConfigurations\":\"The rulesets to queue. Custom data hooks are read from each ruleset's metadata.\",\"suckerDeploymentConfiguration\":\"The suckers to set up for the project. Suckers facilitate cross-chain token transfers between peer projects on different networks.\",\"terminalConfigurations\":\"The terminals to set up for the project.\"},\"returns\":{\"hook\":\"The 721 tiers hook that was deployed for the project.\",\"projectId\":\"The ID of the newly launched project.\",\"suckers\":\"The addresses of the deployed suckers.\"}},\"launchProjectFor(address,string,(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],(address,(address,uint8,uint32)[])[],string,((address,bytes32,(address,uint32,bytes32)[])[],bytes32))\":{\"details\":\"Uses `baseCurrency` from the first ruleset and `decimals = 18` for the default 721 config.\",\"params\":{\"memo\":\"A memo to pass along to the emitted event.\",\"owner\":\"The address to set as the owner of the project.\",\"projectUri\":\"The project's metadata URI.\",\"rulesetConfigurations\":\"The rulesets to queue.\",\"suckerDeploymentConfiguration\":\"The suckers to set up for the project.\",\"terminalConfigurations\":\"The terminals to set up for the project.\"},\"returns\":{\"hook\":\"The 721 tiers hook that was deployed for the project.\",\"projectId\":\"The ID of the newly launched project.\",\"suckers\":\"The addresses of the deployed suckers.\"}},\"launchRulesetsFor(uint256,string,((string,string,string,address,string,((uint104,uint32,uint32,uint16,address,bytes32,uint24,uint8,(bool,bool,bool,bool,bool,bool,bool),uint32,(uint32,uint64,address,bool,uint48,address)[])[],uint32,uint8),(bool,bool,bool,bool,bool)),bool,bytes32),(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],(address,(address,uint8,uint32)[])[],string)\":{\"params\":{\"deploy721Config\":\"The 721 hook deployment config (hook config + cash-out flag + salt).\",\"memo\":\"A memo to pass along to the emitted event.\",\"projectId\":\"The ID of the project to launch the rulesets for.\",\"projectUri\":\"The project's metadata URI. Pass an empty string to leave it unchanged.\",\"rulesetConfigurations\":\"The rulesets to launch. Custom data hooks are read from each ruleset's metadata.\",\"terminalConfigurations\":\"The terminals to set up for the project.\"},\"returns\":{\"hook\":\"The 721 tiers hook that was deployed for the project.\",\"rulesetId\":\"The ID of the newly launched rulesets.\"}},\"launchRulesetsFor(uint256,string,(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],(address,(address,uint8,uint32)[])[],string)\":{\"details\":\"Uses `baseCurrency` from the first ruleset and `decimals = 18` for the default 721 config.\",\"params\":{\"memo\":\"A memo to pass along to the emitted event.\",\"projectId\":\"The ID of the project to launch the rulesets for.\",\"projectUri\":\"The project's metadata URI. Pass an empty string to leave it unchanged.\",\"rulesetConfigurations\":\"The rulesets to launch.\",\"terminalConfigurations\":\"The terminals to set up for the project.\"},\"returns\":{\"hook\":\"The 721 tiers hook that was deployed for the project.\",\"rulesetId\":\"The ID of the newly launched rulesets.\"}},\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Make sure this contract can only receive project NFTs minted from `JBProjects` (not transferred).\"},\"peerChainAdjustedAccountsOf(uint256)\":{\"details\":\"Part of `IJBPeerChainAdjustedAccounts`. Uses staticcall to safely handle extra hooks that do not implement this interface.\",\"params\":{\"projectId\":\"The ID of the project to snapshot.\"},\"returns\":{\"contexts\":\"The extra per-context surplus and balance to include in the snapshot, un-valued.\",\"supply\":\"The extra supply to include in `sourceTotalSupply`.\"}},\"queueRulesetsOf(uint256,((string,string,string,address,string,((uint104,uint32,uint32,uint16,address,bytes32,uint24,uint8,(bool,bool,bool,bool,bool,bool,bool),uint32,(uint32,uint64,address,bool,uint48,address)[])[],uint32,uint8),(bool,bool,bool,bool,bool)),bool,bytes32),(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],string)\":{\"details\":\"If `deploy721Config.deployTiersHookConfig.tiersConfig.tiers.length > 0`, a new 721 hook is deployed. Otherwise, the 721 hook from the latest ruleset is carried forward.\",\"params\":{\"deploy721Config\":\"The 721 hook deployment config (hook config + cash-out flag + salt).\",\"memo\":\"A memo to pass along to the emitted event.\",\"projectId\":\"The ID of the project to queue the rulesets for.\",\"rulesetConfigurations\":\"The rulesets to queue. Custom data hooks are read from each ruleset's metadata.\"},\"returns\":{\"hook\":\"The 721 tiers hook (newly deployed or carried forward from the previous ruleset).\",\"rulesetId\":\"The ID of the newly queued rulesets.\"}},\"queueRulesetsOf(uint256,(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],string)\":{\"details\":\"Uses `baseCurrency` from the first ruleset and `decimals = 18` for the default 721 config. With 0 tiers in the default config, the existing hook is always carried forward.\",\"params\":{\"memo\":\"A memo to pass along to the emitted event.\",\"projectId\":\"The ID of the project to queue the rulesets for.\",\"rulesetConfigurations\":\"The rulesets to queue.\"},\"returns\":{\"hook\":\"The 721 tiers hook carried forward from the previous ruleset.\",\"rulesetId\":\"The ID of the newly queued rulesets.\"}},\"supportsInterface(bytes4)\":{\"details\":\"See `IERC165.supportsInterface`.\",\"params\":{\"interfaceId\":\"The interface ID to check.\"},\"returns\":{\"flag\":\"A flag indicating if the provided interface ID is supported.\"}},\"tiered721HookOf(uint256,uint256)\":{\"params\":{\"projectId\":\"The ID of the project to get the 721 hook for.\",\"rulesetId\":\"The ID of the ruleset to get the 721 hook for.\"},\"returns\":{\"hook\":\"The 721 tiers hook.\",\"useDataHookForCashOut\":\"Whether the 721 hook is used for cash outs.\"}},\"trustedForwarder()\":{\"details\":\"Returns the address of the trusted forwarder.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"CONTROLLER()\":{\"notice\":\"The canonical controller used for every project launch and ruleset queue.\"},\"DIRECTORY()\":{\"notice\":\"The directory used to confirm existing projects still use this deployer's canonical controller.\"},\"HOOK_DEPLOYER()\":{\"notice\":\"Deploys tiered ERC-721 hooks for projects.\"},\"PERMISSIONS()\":{\"notice\":\"A contract storing permissions.\"},\"PROJECTS()\":{\"notice\":\"Mints ERC-721s that represent Juicebox project ownership and transfers.\"},\"SUCKER_REGISTRY()\":{\"notice\":\"Deploys and tracks suckers for projects.\"},\"beforeCashOutRecordedWith((address,address,uint256,uint256,uint256,uint256,(address,uint8,uint32,uint256),bool,uint256,bool,bytes))\":{\"notice\":\"Called by the terminal before recording a cash out. Suckers get 0% tax so bridged tokens redeem at face value. For all other holders, this function aggregates total supply and surplus across all peer chains so the bonding curve reflects the project's global state, then delegates to the 721 hook and extra hook for further adjustments.\"},\"beforePayRecordedWith((address,address,(address,uint8,uint32,uint256),uint256,uint256,address,uint256,uint256,bytes))\":{\"notice\":\"Called by the terminal before recording a payment. Coordinates the 721 hook (which handles tier-based NFT minting and split deductions) with the extra hook (e.g. buyback, which may swap for a better token price). Merges their weight adjustments and hook specifications into a single response for the terminal.\"},\"deploySuckersFor(uint256,((address,bytes32,(address,uint32,bytes32)[])[],bytes32))\":{\"notice\":\"Deploy new cross-chain suckers for an existing project. Each sucker enables token bridging between this chain and a peer chain. The registry also maps configured tokens on each new sucker in the same call.\"},\"extraDataHookOf(uint256,uint256)\":{\"notice\":\"Get the extra data hook for a project and ruleset.\"},\"hasMintPermissionFor(uint256,(uint48,uint48,uint48,uint48,uint32,uint112,uint32,address,uint256),address)\":{\"notice\":\"Returns whether an address may mint a project's tokens on-demand. Suckers always get mint permission (so bridged tokens can be minted on the destination chain). Otherwise delegates to the extra data hook.\"},\"launchProjectFor(address,string,((string,string,string,address,string,((uint104,uint32,uint32,uint16,address,bytes32,uint24,uint8,(bool,bool,bool,bool,bool,bool,bool),uint32,(uint32,uint64,address,bool,uint48,address)[])[],uint32,uint8),(bool,bool,bool,bool,bool)),bool,bytes32),(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],(address,(address,uint8,uint32)[])[],string,((address,bytes32,(address,uint32,bytes32)[])[],bytes32))\":{\"notice\":\"Creates a project with a 721 tiers hook attached and with suckers.\"},\"launchProjectFor(address,string,(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],(address,(address,uint8,uint32)[])[],string,((address,bytes32,(address,uint32,bytes32)[])[],bytes32))\":{\"notice\":\"Creates a project with a default (empty-tier) 721 hook and with suckers.\"},\"launchRulesetsFor(uint256,string,((string,string,string,address,string,((uint104,uint32,uint32,uint16,address,bytes32,uint24,uint8,(bool,bool,bool,bool,bool,bool,bool),uint32,(uint32,uint64,address,bool,uint48,address)[])[],uint32,uint8),(bool,bool,bool,bool,bool)),bool,bytes32),(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],(address,(address,uint8,uint32)[])[],string)\":{\"notice\":\"Launches new rulesets for a project with a 721 tiers hook attached, using this contract as the data hook.\"},\"launchRulesetsFor(uint256,string,(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],(address,(address,uint8,uint32)[])[],string)\":{\"notice\":\"Launches new rulesets for a project with a default (empty-tier) 721 hook.\"},\"originalPayer()\":{\"notice\":\"The account that paid the creation fee for the project currently being launched.\"},\"peerChainAdjustedAccountsOf(uint256)\":{\"notice\":\"Forwards peer-chain adjusted accounts from the stored extra data hook. Suckers call this on the active data hook (which is this deployer after wrapping) to learn about additional supply and per-context surplus and balance that should be included in cross-chain snapshots. Without forwarding, the extra hook's peer-chain adjustments are silently masked, causing the bonding curve to use only local values and over-reclaiming on peer chains.\"},\"queueRulesetsOf(uint256,((string,string,string,address,string,((uint104,uint32,uint32,uint16,address,bytes32,uint24,uint8,(bool,bool,bool,bool,bool,bool,bool),uint32,(uint32,uint64,address,bool,uint48,address)[])[],uint32,uint8),(bool,bool,bool,bool,bool)),bool,bytes32),(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],string)\":{\"notice\":\"Queues new rulesets for a project with a 721 tiers hook attached, using this contract as the data hook.\"},\"queueRulesetsOf(uint256,(uint48,uint32,uint112,uint32,address,(uint16,uint16,uint32,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,address,uint16),(uint256,(uint32,uint64,address,bool,uint48,address)[])[],(address,address,(uint224,uint32)[],(uint224,uint32)[])[])[],string)\":{\"notice\":\"Queues new rulesets for a project with a default (empty-tier) 721 hook, carrying forward the existing hook.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Indicates if this contract adheres to the specified interface.\"},\"tiered721HookOf(uint256,uint256)\":{\"notice\":\"Get the tiered 721 hook config for a project and ruleset.\"}},\"version\":1}},\"settings\":{\"remappings\":[\"@arbitrum/=node_modules/@arbitrum/\",\"@ballkidz/=node_modules/@ballkidz/\",\"@bananapus/=node_modules/@bananapus/\",\"@bannynet/=node_modules/@bannynet/\",\"@chainlink/=node_modules/@chainlink/\",\"@croptop/=node_modules/@croptop/\",\"@ensdomains/=node_modules/@ensdomains/\",\"@eth-optimism/=node_modules/@eth-optimism/\",\"@offchainlabs/=node_modules/@offchainlabs/\",\"@openzeppelin/=node_modules/@openzeppelin/\",\"@prb/=node_modules/@prb/\",\"@rev-net/=node_modules/@rev-net/\",\"@scroll-tech/=node_modules/@scroll-tech/\",\"@sphinx-labs/=node_modules/@sphinx-labs/\",\"@uniswap/=node_modules/@uniswap/\",\"@unruggable/=node_modules/@unruggable/\",\"@zksync/=node_modules/@zksync/\",\"base64-sol/=node_modules/base64-sol/\",\"ds-test/=node_modules/@uniswap/v4-core/lib/solmate/lib/ds-test/\",\"erc4626-tests/=node_modules/@uniswap/v4-core/lib/openzeppelin-contracts/lib/erc4626-tests/\",\"forge-gas-snapshot/=node_modules/@uniswap/v4-periphery/lib/permit2/lib/forge-gas-snapshot/\",\"forge-std/=lib/forge-std/src/\",\"hardhat/=node_modules/hardhat/\",\"lib/base64/=node_modules/base64-sol/\",\"openzeppelin-contracts/=node_modules/@uniswap/v4-core/lib/openzeppelin-contracts/\",\"permit2/=node_modules/@uniswap/v4-periphery/lib/permit2/\",\"solady/=node_modules/solady/\",\"solmate/=node_modules/@sphinx-labs/contracts/node_modules/solmate/\",\"typeface/=lib/typeface/contracts/\",\"v4-core/=node_modules/@uniswap/v4-periphery/lib/v4-core/\"],\"optimizer\":{\"enabled\":true,\"runs\":200},\"metadata\":{\"bytecodeHash\":\"none\"},\"compilationTarget\":{\"node_modules/@bananapus/omnichain-deployers-v6/src/JBOmnichainDeployer.sol\":\"JBOmnichainDeployer\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"viaIR\":true},\"sources\":{\"node_modules/@bananapus/721-hook-v6/src/enums/JB721TierOwnerMatch.sol\":{\"keccak256\":\"0x196b8bffd727045f2137c32c7765845bf9df116d16aff0292937622120b2f440\",\"urls\":[\"bzz-raw://bd0cc4b5b5e48ca3bc2c5db4ecfc21de5e26a5ec82c2345d68c2992a155e99b8\",\"dweb:/ipfs/QmaV7X2AMZ995bpDPyYRJFWD5xUrohsdb1osYkLrrGvupg\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/interfaces/IJB721Checkpoints.sol\":{\"keccak256\":\"0x5bf06a02c658969b414ec180e12ebd4a38e23bbc6e5f585890432f972e86da55\",\"urls\":[\"bzz-raw://e3beeb2f695cbe27b0900a7720ea0cf34cc54ae51d95ed6df1a1c51760f70806\",\"dweb:/ipfs/QmSSmVwpiFBRd3J6MBKjZ2Ea9vytEZVCPmKdhmzXJnhF1X\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/interfaces/IJB721Hook.sol\":{\"keccak256\":\"0x7bd4927dc430e63f4cb2f7592a4072798357216ab8b62e49e97a91eef842e88a\",\"urls\":[\"bzz-raw://1be3a8d952223912ca26e0038675ecfe58617ca8eb3f3542538532c3527b0cb7\",\"dweb:/ipfs/QmW8WF6gHxHTFCJU3kUMRCRdDvTJcpRomDS8nxeYmr8jPF\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/interfaces/IJB721TiersHook.sol\":{\"keccak256\":\"0xa247c65e6a17d311d976b0ceb4fc11d25a6e13b85e51a57e968b7b6f24ed1b9e\",\"urls\":[\"bzz-raw://940bee38a343493057d2021cc51690d085a0667980c32c57d971bb1c59cbdb22\",\"dweb:/ipfs/Qmc3fynSKGgkYcB4tMBKgGfjyjUd9ficoypHPyyMCcYEtq\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/interfaces/IJB721TiersHookDeployer.sol\":{\"keccak256\":\"0xdcc60f2dd90ed23856051df61651ee65d097ef32531c2ea40b9ddf817e556877\",\"urls\":[\"bzz-raw://3d5ffaf617c20b5c6346bad6654d9ca865678256fa97a3b8032deba13ccb614b\",\"dweb:/ipfs/QmTyhfKK2HVUe83pTV6Y88uWGFK659VHvB4emyHv4Lx7wp\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/interfaces/IJB721TiersHookProjectDeployer.sol\":{\"keccak256\":\"0xaadacbf692c25f26ad6c1c78be6013882854166cd1bc131062cf81e2a7dfb378\",\"urls\":[\"bzz-raw://c602ffc9e72e249e93bebc69a6f816f2fb2888b5a6649baef2e971542cc57f25\",\"dweb:/ipfs/QmWP286MM6X2dggsfu1e96CpCiSyAz65b2nncshEWXGZVr\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/interfaces/IJB721TiersHookStore.sol\":{\"keccak256\":\"0x0ec2d37e62f76d7536e5bd3091c56a0a3f96482ccbe5cbbbc0df89f85d6f0216\",\"urls\":[\"bzz-raw://41bd0e085fbf07d3b24aca0df7e6da01dd18ba91ecbb46cdd73707b315c924a4\",\"dweb:/ipfs/QmYGpECUfXdwsvnYEMRHuHH7UMvfgykh8mCU6KCFqGvWey\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/interfaces/IJB721TokenUriResolver.sol\":{\"keccak256\":\"0xef418fff2bb7811dc41c1807709741049889818bfb6096954b61b73edcf09f07\",\"urls\":[\"bzz-raw://5aea971649e1f5e17c258442e85d7cc4f8ca0faf9ad185f6b010784b7c6aa1dd\",\"dweb:/ipfs/QmQDZ3cfTdooCRLdRn8p4VKbSqPdZ8rSXL6vvYtNUJc5Vx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JB721InitTiersConfig.sol\":{\"keccak256\":\"0x04a9e63f7f61e1c506d53ca70ae9c0e71b03b957f535d4e769b5d488ba425b7d\",\"urls\":[\"bzz-raw://b545fe59f580127a07a8ee7bc082c13c292337d30dc89b535cb5fbc255c29b96\",\"dweb:/ipfs/QmWTBb2LnXDvcJDDyD93ZJMhuybS5z6528TGQVjWQYaTTd\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JB721Tier.sol\":{\"keccak256\":\"0xf0e249848a1385d00956b9ba50d1a983515a6d40e932e0705c96b63b4d0f1ca7\",\"urls\":[\"bzz-raw://0fb9df1dfd7124dd3e7f37426d47944cace9ade5177064cd8c593e931103f907\",\"dweb:/ipfs/QmQDtwfqeDUGPJsipHPDoo4q3yNFtogQg5ZF1z8E6JbWvv\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JB721TierConfig.sol\":{\"keccak256\":\"0x0ad3eb9440c15f69e4d82a3d1a90fc6cf01703816f4c2534e9eab1a2d0e26d80\",\"urls\":[\"bzz-raw://e55fb400ffeddfad6eb94c259e5cc2406a93945414dd326f2e2733ddbd1c0513\",\"dweb:/ipfs/QmebwiqWs8XE5JRPbk1eJSaekTHdLUr3p3SRh4Ye3jkJJC\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JB721TierConfigFlags.sol\":{\"keccak256\":\"0xa96d61224a0c57d2cf1a15c8123925246b64c017a08f92a6d45dd5f5643960c1\",\"urls\":[\"bzz-raw://4689458074886b2569d1661a44d64129b7bae028b786d34578b8e34384ef9779\",\"dweb:/ipfs/QmTphmLU98MZb4DKWEMH4UFbAggchpshfHanH141LVDzta\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JB721TierFlags.sol\":{\"keccak256\":\"0x5f73fa3c927b1902b5d0927ad11a06960e29ad88a6e29b9405b9eaae8846c2c5\",\"urls\":[\"bzz-raw://13b0db30829eca17769c0e9fb011ccaebbda15e027c24175d8d6cc1163c0ca1c\",\"dweb:/ipfs/QmYmXASJGwsXRU2NYNyVzTyFbF78GjGTqo15Z5R64EX8AT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JB721TiersHookFlags.sol\":{\"keccak256\":\"0xf59d1106597f60959606a8c7e55fae3fa7e8e95572ca8aca7c3b109679f456ee\",\"urls\":[\"bzz-raw://c883611c1fd3a046a81b7604711637624c11ee4f8a7413651d812a9f4d34671e\",\"dweb:/ipfs/Qmbsx8qoab3BQNm6q725hLb5XjSinKkZFZVQ1jDLiNH8wf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JB721TiersMintReservesConfig.sol\":{\"keccak256\":\"0x86fe586a05e6d4bc6fab9b68996a7f4b74c5362ca6f24b9d8057ed7e4cd1c5ac\",\"urls\":[\"bzz-raw://0915f17d1f958ab1fe6b214d99ed62f1f858684898c803f1a8a6a557472dd140\",\"dweb:/ipfs/QmUhdnSV8UzkgvbtkYEKHrpyDEmc2aJxW5HQ1gucuxxu5A\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JB721TiersSetDiscountPercentConfig.sol\":{\"keccak256\":\"0x4672eacb6b0cda5e6f5f72ddb91463c52fb90b4df421053e3b40024f19a59954\",\"urls\":[\"bzz-raw://9d8e3a0b35d6b2a6ec66527594263400189b6c766bfd6943c83704380a989aec\",\"dweb:/ipfs/QmUE7NhFWsxjFRzTuRyHJ7oRx3JXD9CnG83t29PjGAhwPR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JBDeploy721TiersHookConfig.sol\":{\"keccak256\":\"0x49cf6d840225467ff5e092419d28220afa51ff005730200bff454450225949a9\",\"urls\":[\"bzz-raw://002caf83fa409f5f94290d3fec875ee92ffd6d27237198e1c6d4d712c9db6966\",\"dweb:/ipfs/Qmc3nJxy4T7QRvEtXD5heH69942bcKepLR3qny58CoijBy\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JBLaunchProjectConfig.sol\":{\"keccak256\":\"0xcccee0f18ddbaacd8a319a6f816bf160393a8011706411bcb3754a8bc7556924\",\"urls\":[\"bzz-raw://3498e3c141a2acd66cc847ff12ab933b82dfbfe9ef3d694c82b8cf1c30fc29ae\",\"dweb:/ipfs/QmQkgV66WSQP9nPauA7UXiNjqF7KvxP7nhTQnAd7UqFPqQ\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JBLaunchRulesetsConfig.sol\":{\"keccak256\":\"0xa555f13101f23ca0496c82bb79d5b79524c9bf524a38da6593020f26a0c50404\",\"urls\":[\"bzz-raw://f0c6d1b582169d25db41a3fe3e65637ccd52e026755dcb9debe75806df05c05c\",\"dweb:/ipfs/QmZNWHPcijmx1asYnqXQoVQooPZyUsTgvX6zX7v3uLNe1c\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JBPayDataHookRulesetConfig.sol\":{\"keccak256\":\"0x052e19941b4216ae861e4d35fb9263c1cee943b55dd6811de7bca9863519a43f\",\"urls\":[\"bzz-raw://1f888993e89e20136847c0c096f76e4893d09bc1653b5f01aed93f4e8216d333\",\"dweb:/ipfs/QmNdVuP69J78Dcy4pqKjrmU9axURgEggdDjfCiLME9WUA3\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JBPayDataHookRulesetMetadata.sol\":{\"keccak256\":\"0xad4de190dcadb8049d92a9e24f95e20585bcf2cfe91a500557d5b27108dbe0ae\",\"urls\":[\"bzz-raw://c43d56cf27e2cff32e2379d45e57b3d6aaf7508571317b904cf0c4c3c35ae7b0\",\"dweb:/ipfs/QmWcmkb5xZtEd1JE8kLus3kLYNTYaiKNwpCmxegqZFiJ1E\"],\"license\":\"MIT\"},\"node_modules/@bananapus/721-hook-v6/src/structs/JBQueueRulesetsConfig.sol\":{\"keccak256\":\"0x2a5cd16da5b916fc0b0755264fd33f39b03077048266324991b682a3a526e911\",\"urls\":[\"bzz-raw://5d0604e409d7328ba2779220b7b677cc23099582b0044ba57a4e13bbc6771baa\",\"dweb:/ipfs/QmS5ckLxxr3vcDScSE71spwMjnwS3myogW3tVtt6DNUBBB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/abstract/JBPermissioned.sol\":{\"keccak256\":\"0x16a1fa9f031564f9f3253d5e21327b228651269263bfbde10eb04862c65ed577\",\"urls\":[\"bzz-raw://4150d75d10f267953c0a42948ebd7bffe1568a5fb0dfe84befcda512ddf3a19c\",\"dweb:/ipfs/QmVMYXMRyiLySHCtoPke9AuVkhoVm9Gx1zoLMmSjXjFf2M\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/enums/JBApprovalStatus.sol\":{\"keccak256\":\"0x58f3eed8b6ecea6b640f4eb78a5a416ce8737f9155e350ef4077db422b3fca8f\",\"urls\":[\"bzz-raw://0b56bde97ef9d8ec2a3e464202c5d2fee9c39597485b3fb8baaeef971cc63bc8\",\"dweb:/ipfs/QmSdPaNfPm83yibuSvgLbaqgZw7LYkTLhacrxDagH3sprJ\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBActiveVotes.sol\":{\"keccak256\":\"0x2e5b40c3b1347e9763b8e77aeb989a5200f4011a30c6616a996b91b4ead1de40\",\"urls\":[\"bzz-raw://a679dda01d5cba08b202a0f71219734078f254705c21ec86326427d704fe6d8d\",\"dweb:/ipfs/QmQ9KsSiVLeVHSQPNGv4CV3J1BPrw2TFQMR2YoPvGa2Auk\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBCashOutHook.sol\":{\"keccak256\":\"0x2a6d327092775fdbeaf922b8364403102cae437f765f662fe142bf97e87c2ef1\",\"urls\":[\"bzz-raw://5f9a23971860b907569917fe14cbcc85993d83fb32e5342dd5338a1721e540f7\",\"dweb:/ipfs/Qmamt2n7HaWo2cUDn8K2FhrZPHBVxuaCWh9jf8V3WYPXMN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBController.sol\":{\"keccak256\":\"0x7032c26dd11cec1ed279bd96a63c0b4f77126835e9fec744e259495827f9ad92\",\"urls\":[\"bzz-raw://a2129d48bed0763676d7f0854d6e784134642584f4c70fabdc7e9e5a9490bf13\",\"dweb:/ipfs/QmU1D5L4gxf2acwXz4QAp9fSZNVboDcj4qTE3xCz5bh2M4\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBDirectory.sol\":{\"keccak256\":\"0xb8f3ba0a544360b32c9f0a704168ee93c2960accfc010735c8cbea54941e63d5\",\"urls\":[\"bzz-raw://e9f14d5daa2357db4afe96313b40bf0c53c606315c9cb55109fffdc9c2fd85d0\",\"dweb:/ipfs/QmRPHFAiivM9CqdfocRyahdSjfWTbaSepPNCGGQU23ABcv\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBDirectoryAccessControl.sol\":{\"keccak256\":\"0x963e641f7b02187389fa813ab177b8d0f20a7a543f6ce2306e8d5f9db95d56e3\",\"urls\":[\"bzz-raw://b500161bcc70fac6830211b2f9855c2c1ab17a91226619cedde7daa166f9196c\",\"dweb:/ipfs/QmV92TK8CTZxVJoGBDEsBfUDidoLAobFmyL1NdQVJARpCD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBFundAccessLimits.sol\":{\"keccak256\":\"0x0cb50a855cccbbe7c74a1ebc454112b7b63f502badd019895dd936365ac73340\",\"urls\":[\"bzz-raw://226be05349028b8f055e386fbc41f7db0feb6d027b6068c1c929b0924688e129\",\"dweb:/ipfs/QmXyotizn7pR8DQJtuj6Xkcr7LKorSkm9q8kQGaSDDikSw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBPayHook.sol\":{\"keccak256\":\"0x08599d439d898566b311bc4bedf7f0050ce25c86e246c43f673f3ab4d2457f21\",\"urls\":[\"bzz-raw://db19e95707920262c79197be9296fe381782220bfaf00b71df3a4271da83832f\",\"dweb:/ipfs/QmYzdomQzXNSk46U5vkiEnDErJJdR17deL4S6hPundstZd\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBPayerTracker.sol\":{\"keccak256\":\"0x3001bd8830eb6a679ad8da45228285c01781fa1b5aa69d2ce7c83b754319ebb1\",\"urls\":[\"bzz-raw://5b639f43468a408ad929a919aeb8bc90cfa9d0bcea57192b087659114056352e\",\"dweb:/ipfs/QmXWvVTGLNnubb8vvSPcaU3vjawVSPaRHjifsjeUu2kDJ9\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBPermissioned.sol\":{\"keccak256\":\"0xa43d05c9cc31cd768072e60d4f097d60dfe199469bfc96aa8df29346a15ee4dc\",\"urls\":[\"bzz-raw://de7caab7841a56b681140993557374edb54763a08b28aaaba35f1bc1a01f7937\",\"dweb:/ipfs/QmQKG6QNm7PNebRtKeLSzzXgp71Yw5Ja37nGPCvVa62Rzu\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBPermissions.sol\":{\"keccak256\":\"0xb32e13d512a7deb9ba1e47bbc0992817a63caa9e1f2913d6c55b637a57084037\",\"urls\":[\"bzz-raw://0d291ccc6edc581febf386779423001b0ed4d3b5b021ec444f7bef01cb2f9d28\",\"dweb:/ipfs/QmSUFhJpcpWYLEUzt4KrzyC4am39TNost8tWAtn5GdAUg2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBPriceFeed.sol\":{\"keccak256\":\"0x3a948500b5397c90e926f3bdef9423e7f095f906b23cd1503009802c80bedb41\",\"urls\":[\"bzz-raw://a0ea0b7e5d442257f6159799b7bf262615b0f04e5cd542b0980f131ae40a63bb\",\"dweb:/ipfs/QmX7uugLaXtT5XmYxqfrmDqU2YuknAeYjHMiLm9iHaRfHw\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBPrices.sol\":{\"keccak256\":\"0xed5e532f6ee86029a1a4a1ba8b593296f772909a5f9d95da6cc6c595a838446f\",\"urls\":[\"bzz-raw://4314cbfe4ebd96a48eaf1c14af860aa08b7cd6a73da10391746b4d3410d13d67\",\"dweb:/ipfs/QmfRkWFbxmJUMew6DsDGbK88PypDBUA6PDTJFvfBaMno5n\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBProjectUriRegistry.sol\":{\"keccak256\":\"0x4342aaa8b9566e17691f69fc71e050350dd89b63f5040f092f115610d7a6c0eb\",\"urls\":[\"bzz-raw://88ce07791403524a229b080ad05604962d5b54e57106a533f62bff8a32896b1d\",\"dweb:/ipfs/QmSYxFpoH714CF7mZVhgKvFdYHHgg8R4UGXVXhMS69C7H2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBProjects.sol\":{\"keccak256\":\"0x72c6cbda5a93593e3cc49ef6c4e0848a4b6daa88c188c4192776af86c49911dc\",\"urls\":[\"bzz-raw://448ed5d7a704b5f4dd759514dbcb78160b82732ac6bd7bc368a9f8822045e6de\",\"dweb:/ipfs/QmbnpCPxQLDvQx5ymEy1Ty3aks7bjonydops1CsjCACJBN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBRulesetApprovalHook.sol\":{\"keccak256\":\"0x11dd67effb025396bec1bb97d35a9ba162340e9a824c048e8286802a12acaa45\",\"urls\":[\"bzz-raw://bae11f483c66d98e7fad9bbf47249f6fa4434693e8bace78cbe6d4da9afee009\",\"dweb:/ipfs/QmWjrjPtr8dLGtXQBrz6idwcNqyx2yVSVVQtqo74yqUSZV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBRulesetDataHook.sol\":{\"keccak256\":\"0xf9aad7d3c7de29e020af4fea893bbaa6a1c0e9a8ae5860331c9f4d68d1a5a99f\",\"urls\":[\"bzz-raw://e10b6ed0827ac155153544b8018d2fa812628016e8a168f7df771616f92fd6f4\",\"dweb:/ipfs/QmUB3zuj8B2MAdgSYEMPh7ovXuM1fBb7jN6gLVxstjcAE7\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBRulesets.sol\":{\"keccak256\":\"0x8fd69e04aa2b5962a917394c0a4baa6653f7cea93629a1915c1f9c2e870143e5\",\"urls\":[\"bzz-raw://6c7ce64037e6a11cc03e5c66607a219eb25c953ad76aa7b914d2a9e8f0cd5434\",\"dweb:/ipfs/QmYoTec9wfd89HAnNckC2XJWegtgUmfjmi1vJYT4LTXQ61\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBSplitHook.sol\":{\"keccak256\":\"0x8155763689f6f51b5c6712ac6f23728b248a8924e69e63f8aa14d01c78ea17f1\",\"urls\":[\"bzz-raw://7bab14bd7250cc3ba6665573f2a961308a3453015af7a0305488c0db1745f95b\",\"dweb:/ipfs/QmYpKwToPcSChWXyJ75SBEeWKugBygAnQ1WaZ8wWcu5rha\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBSplits.sol\":{\"keccak256\":\"0x9d27fe4d9aa6dcbb24a24ee1fc16e51b51fab1c4ab1eace93981e73f3c4ce636\",\"urls\":[\"bzz-raw://7a6a1243102ac23cb1643bcc670b6b16b70566877941233964159f9b37755113\",\"dweb:/ipfs/Qmewa2o3nyoRwZ4pdhWqUh1ShWXA3GHJffiVafcKYXg2Ao\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBTerminal.sol\":{\"keccak256\":\"0xa3621c12f7c2e33ee38b5de626a5939190d8a12b1e5318a7cd8d398595480cec\",\"urls\":[\"bzz-raw://1341254389038383117d9b23ed2f9d1812fc30ef1c11cfd6c8423918894d7ba3\",\"dweb:/ipfs/QmV2WJ5a3NW12RnZAM3ySbEfGHNN6GfqqpsMHXorfoxiQo\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBToken.sol\":{\"keccak256\":\"0xadb3a7c3c149b60b6b51fdfb2acc814956d8aa9bb94e745c0e907c171b0983f2\",\"urls\":[\"bzz-raw://dddd118b37582f19c7559bdf848f53a29fb16289311bd14957c95fdee9cd28e6\",\"dweb:/ipfs/QmbwWXXVR4SGH9tz6pMKKMZxZ8YF8iRQpMCP3DnXDadx3L\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBTokenUriResolver.sol\":{\"keccak256\":\"0xcbdb1448260ebea5937411516957ef199099e34ff997e7f2a617c2898f921994\",\"urls\":[\"bzz-raw://d1cbf97e5684c987be6703c096e8230d870fab25a23eec8d209cd082e3f2637b\",\"dweb:/ipfs/QmNmzeuQoFiaUTQAcV1tyJyjUYEJ3t7386zTw4ofT7HoZM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/interfaces/IJBTokens.sol\":{\"keccak256\":\"0xf7b458ce7e75e1c4daf2052873846b7c99abb098c0d5fbb2ee5d18e132e4a76c\",\"urls\":[\"bzz-raw://ee20abdc20787df386809255eaee2ef27daca71d4769a0d146cc249502ab0604\",\"dweb:/ipfs/QmP3ZpnnnTQKKGNV9KyLxCYXkjBDuiAgqHX6NRGYuYzTaW\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/libraries/JBPayerTrackerLib.sol\":{\"keccak256\":\"0x5a13bae1bbbf4f7d538dfe203e653b870041e53e3fe45a3d14b7f46530fae118\",\"urls\":[\"bzz-raw://ffd02d89965935229f3dd649e91098ea49950bae24c5a08f013d043adde8b588\",\"dweb:/ipfs/QmZA1KeSDAjCgWV5diPB7GMetvzUoy5VikA1P98aqbPZMS\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBAccountingContext.sol\":{\"keccak256\":\"0xf53e975ce2632558a95d0a57679dbb8afff984d06daaa530cd4c442e467c3403\",\"urls\":[\"bzz-raw://519f7c466c8d90227afe2bd9108e7477412600fea8b4134889795a58a51b156c\",\"dweb:/ipfs/QmaSHMrNLfP8D9RRUaYbMWURdZYweUmt5ysgtTGMZiwnai\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBAfterCashOutRecordedContext.sol\":{\"keccak256\":\"0x8cd6d13c98bd825d7e61cb3b2f5cbf56e77f9a2f85eaa0e27d82f1fb8d5af4f7\",\"urls\":[\"bzz-raw://0e4ff9a254147cc6728b3bdc3862b77d15b518b49375e400b5f0b78552f14c62\",\"dweb:/ipfs/Qmd25R3LDrnRHiSdrNSdfqk8746A3J3VH44C5HDfHkFvU2\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBAfterPayRecordedContext.sol\":{\"keccak256\":\"0xcf1761f48e4cbd6eeeb64bb19e434eff50a7f666b2116657f88f63d19620c6de\",\"urls\":[\"bzz-raw://842fe47a4ad56c830040864b458de398efd0cf82eb0add9349e792d0c8b0c275\",\"dweb:/ipfs/QmXBj6EVnzvVX8ZYa2ndyjoSZDGjpXxaoy7dBuoGMaAmRX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBBeforeCashOutRecordedContext.sol\":{\"keccak256\":\"0xd3af6ce6d8ef731aa746e08de846f0422b34a568a3d1000fb8f85a32ba5701b0\",\"urls\":[\"bzz-raw://237e31d3ee24305c1ff4ffb9f829a4159fbd6bb8b4ecb5b557aa16e7eb924bcd\",\"dweb:/ipfs/QmeW4zTaM2J8DDxdC7zLwaHryBLcC3ydbHNSTHcmyETGvG\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBBeforePayRecordedContext.sol\":{\"keccak256\":\"0xa5e4dd0ffa54c8e56f3bb6a437b2e13ef8728ee15aee3d7cb1d0dc96317e75dd\",\"urls\":[\"bzz-raw://fcd2113962a3f34e782090a553f1ba5ace6653bd5d5f932e8bb5279f42bbcb5b\",\"dweb:/ipfs/QmWLhDEprdQsNFmPhmNojRHDhqwG2QMx58AV5j4o56P4mx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBCashOutHookSpecification.sol\":{\"keccak256\":\"0x1579c160a19e68eb06158f56120acf06b8aa4bbbc9836c80fabbb3d2e57ccf3d\",\"urls\":[\"bzz-raw://a81f5e0c384caf0ac11814825ce07e6c6cee97d28f60dcd65dfe8d529b6135fe\",\"dweb:/ipfs/QmY2q7oMFDMN1PoQ8zp7PUQu4K5dYKhYLKBKqrTy42YU6N\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBCurrencyAmount.sol\":{\"keccak256\":\"0x7f321bbcbd13abfbc8f0d08a5adaaf8ef312db5bb899012fcffb6170fbb962a9\",\"urls\":[\"bzz-raw://bf9301ef1dbb3abda7b492585377617508ba048c6170f21a5e7d2b3c034eb384\",\"dweb:/ipfs/QmcetEFxSYLLNSZzPBpNn3Fc8sFcrFE8A8h12ZSj2tLgxD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBFundAccessLimitGroup.sol\":{\"keccak256\":\"0x7e62015441edc056c3959fb0e5d0b59a1b209a91ce4beab9d3f6c25e02daf0c0\",\"urls\":[\"bzz-raw://5c77a27155794a7c05ea17ed4bdb382039187b9effecc300563d7fb144029983\",\"dweb:/ipfs/QmXE4FptihU4wSqFLeGWsaNDpZmmNYFLEXMnWGhEC5pf3X\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBPayHookSpecification.sol\":{\"keccak256\":\"0x28f565b626774c36a990ac999f268fbaf9d7f7861e862fab1fb8301f2534e8d1\",\"urls\":[\"bzz-raw://a5d7375934179178febd3b412099b1a5ff42a154ce8b949df2c11b5f3cb3b80e\",\"dweb:/ipfs/QmXP5vVq8Z6HntiuMcPWfQURCKejyiyHLKYuMmzCuUJJtV\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBPermissionsData.sol\":{\"keccak256\":\"0x9cb75b1171657be08950f9fc9f6c2bcb2496f618de4ab932141d424dec29d9df\",\"urls\":[\"bzz-raw://a8f578d6132c92048ae553a3c13260ecfa657f4a1bbe18f6c550d96988167590\",\"dweb:/ipfs/QmSYfGm2mcYfMm4wfnZMTjuUr1kBJoq4vZSCkwdgi9BRFk\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBRuleset.sol\":{\"keccak256\":\"0xd03f45345597fca43effe3bc593572c989f4294d909505e331cbd2640a801d23\",\"urls\":[\"bzz-raw://2cc09b335549f4982c16c1109f3078f09fb81c32370baff007633a38badb7a83\",\"dweb:/ipfs/QmYJHBvXscvokRqzdGdTCRQtHUpnePS2uaCDfgHLuuMo56\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBRulesetConfig.sol\":{\"keccak256\":\"0x812ca14f18e228fde272c0caf56a59b71302bfb4f9c514ac6fb0989ab8e1c48e\",\"urls\":[\"bzz-raw://9b234704315ac567db402c89dd5be46ca029094872f6dd52698324dd6ddf6a2d\",\"dweb:/ipfs/QmYPUJHLkyUwbYfJ7UdcpgvyzPtibUmhrKtzXQcRtA8Kvz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBRulesetMetadata.sol\":{\"keccak256\":\"0xbb9bda3b7ebb6796fa091ee6ce3182ad2a03dc35b89df0fb1107fae7c26ae0b4\",\"urls\":[\"bzz-raw://1b400674d8ec4e3495041c03d5601c07a68eb5d18a0cff83a5823007d6bad36e\",\"dweb:/ipfs/Qma76CRFPwV9WZq2ttZ2FFvui5BvzRHnftrL3Tz1m9uGKv\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBRulesetWithMetadata.sol\":{\"keccak256\":\"0x1bcfadf20488f6df65227f8d4d0fbf9b7539456a2389567f7fe3900d23289bc3\",\"urls\":[\"bzz-raw://0a15c399a71e5373f8c0484c6d6b83521eda31e063a2c53e4c5cec4e74550343\",\"dweb:/ipfs/QmQwi8zkjoTVXbK89NeETYimWCacTrNsesJdpLSvGdqMPX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBSplit.sol\":{\"keccak256\":\"0xf50ba85591d86076ff127e97af2c4b7d1a1be3e20e25d784b64591697d71ab52\",\"urls\":[\"bzz-raw://04276773313a01c2b816c95addea68843c21db3888f4c547eb6e6c486ac55547\",\"dweb:/ipfs/QmZGpxzryNkheek5V9dJWfcJyTP7T52PsPXgRBuweK2rsN\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBSplitGroup.sol\":{\"keccak256\":\"0x8dc98fa9e730bee8bcc0a8acf1bc4db1c9b0edf307d969c9c9caa4d6b8d856d9\",\"urls\":[\"bzz-raw://66f4306e0e69c82033927952564fd617e7c4b29aa8b165d5b53a0ebe3109ea12\",\"dweb:/ipfs/QmQqN1u7FHAdEtEZNRcKvZwYtXEQVQnLd6FMzHESP7wDtx\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBSplitHookContext.sol\":{\"keccak256\":\"0xa2246f4960ec2b24db3fbfce5d59782cdb9a8fb3c3f832a2c39ddc92859ff170\",\"urls\":[\"bzz-raw://3e3a0ae100c15bb15f0484cb68e3052c3d3d764f84e37020e8dd6b658ff98076\",\"dweb:/ipfs/QmPAv99zN7senrfCMMkeT4RMWpwTdqLgMURQR73BLRe4ZG\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBTerminalConfig.sol\":{\"keccak256\":\"0x9e31505080d3754b6d7db96095b0545930ef6dbc035b91fcc32fdc76a0e7c2a5\",\"urls\":[\"bzz-raw://f7702ab33a1b713c37e5397a55d8ef089289f4da8034cfe9622cbc69a98c47de\",\"dweb:/ipfs/QmXyiXps4aJyiM7vtDC373QUoqwB4DMETaZzC5cZPJKaAK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/core-v6/src/structs/JBTokenAmount.sol\":{\"keccak256\":\"0xc61593d33d5ec30e695d382948a1b944d01e29a8f2bfd29f75ecebcdbc7816de\",\"urls\":[\"bzz-raw://8992c1e5fca0c2342ecc0e734dfba6a2a752e4c29184784931d0971e44305051\",\"dweb:/ipfs/QmYNcaW3qeCkgAExUaFTq238fgfJuoYCTwjCn7jm94U4dJ\"],\"license\":\"MIT\"},\"node_modules/@bananapus/omnichain-deployers-v6/src/JBOmnichainDeployer.sol\":{\"keccak256\":\"0x2c25864383d14aae195485f1e0dc0329b47951a2dd035bc4ca31837ab33dc946\",\"urls\":[\"bzz-raw://e052440d838518a5bdca767a4d56b635585cd2880f6a0f1cfd6373b5be724673\",\"dweb:/ipfs/QmYK5swETtK7GAYPdqQNcxWJDtFMkbJfGDNBbYjQUEkZVT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/omnichain-deployers-v6/src/interfaces/IJBOmnichainDeployer.sol\":{\"keccak256\":\"0xb97035f44bd446a4128efbeb8fdfcc5505d83fbc2c2d20478c0ddfcc0c193f8a\",\"urls\":[\"bzz-raw://89015681ad528498cf8b3b7865410edf799e7451c6b209a8c29e190b3e95a79a\",\"dweb:/ipfs/QmTVU8tHL5DtDNuMVkNJBEx8PNJKstmd256mqitSdfKzC8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/omnichain-deployers-v6/src/structs/JBDeployerHookConfig.sol\":{\"keccak256\":\"0xf515521f72200f56f09e171fe50a2da58c01d9fdf56d4db39fa94831f9588823\",\"urls\":[\"bzz-raw://c77084c0e27e0436bbbadbe6c28b5f175186598c74a3713418176d872c02ee65\",\"dweb:/ipfs/QmXpq4vDrvNZLbZdc879Nju5AGTxpgXR3oDFNcNyxy7jQR\"],\"license\":\"MIT\"},\"node_modules/@bananapus/omnichain-deployers-v6/src/structs/JBOmnichain721Config.sol\":{\"keccak256\":\"0x1ccad826888d3ef99393297356df205075208bf0dfb1424e07058fd6aacf7d3f\",\"urls\":[\"bzz-raw://b225ff8c00e99abd56805ec875acda8f0a0e4eed25ec95b7b247ebfa7b068390\",\"dweb:/ipfs/QmbhfukagNqZf8gqx4iAvzt7dS4Qkc64ydV85wufD3JYaD\"],\"license\":\"MIT\"},\"node_modules/@bananapus/omnichain-deployers-v6/src/structs/JBSuckerDeploymentConfig.sol\":{\"keccak256\":\"0x4014b00990dab5b4754d46e95a701a1044f4ceb56cf4c4db53552ae796ff4b2c\",\"urls\":[\"bzz-raw://4e4b955d61b1923ea45f0f9923c7fd0c68ec561a0817ac7af08a67352b4156bd\",\"dweb:/ipfs/QmNQfSYAvQYo5GMsYTpncL9XzYMwnSVRmcr5KkU765G4S1\"],\"license\":\"MIT\"},\"node_modules/@bananapus/omnichain-deployers-v6/src/structs/JBTiered721HookConfig.sol\":{\"keccak256\":\"0x3e16948659fd45644f394608163169849e41de67e500720ffd564ac41003f12e\",\"urls\":[\"bzz-raw://879f292d76d8bfd8007467e98a7c05296312e8ce6cecc8370e49865647935b8d\",\"dweb:/ipfs/QmWk71Fn7hQaqjA8v9dFmWAuTYYqWyCJwkvHSzNPuDYpKU\"],\"license\":\"MIT\"},\"node_modules/@bananapus/ownable-v6/src/JBOwnable.sol\":{\"keccak256\":\"0xd11a69067191189a41e75692a3b81366b6d2176b364032d83e167631892c04b8\",\"urls\":[\"bzz-raw://6c2c7d32775cd64383cd3a28ec17e54a3a55f9ea55edaf571af6b53bc50f066d\",\"dweb:/ipfs/QmcvHyEUMBvEK1QayXtgBGtTJth5C7bL24U9mKP4fsW6Yh\"],\"license\":\"MIT\"},\"node_modules/@bananapus/ownable-v6/src/JBOwnableOverrides.sol\":{\"keccak256\":\"0x1b85df8e56003cecfad1cb1aee04e0ada8b37f22b0be20df03f6685a7a772a70\",\"urls\":[\"bzz-raw://98a245649f9054c2fd29e3508c787fbc53db00b43ccb7e2998690d64c6ef15a9\",\"dweb:/ipfs/QmUL9Nikj4QnjkaddEMPX59ccziE1SAE28xneLaZ1X1AqX\"],\"license\":\"MIT\"},\"node_modules/@bananapus/ownable-v6/src/interfaces/IJBOwnable.sol\":{\"keccak256\":\"0x412aa3a3b9095fe3c7c81e08b8e0ab7775e0d57709648756cf565d78f991db5e\",\"urls\":[\"bzz-raw://0cdf10b412dfce9f6372192c6e5ee4262f994ec793455f8ff8f0c9f6ace6d4fd\",\"dweb:/ipfs/QmRGzsFo7Xb4JvKPQ7uwCLG7FiyEEMz6h1EGTiJCSuqwbB\"],\"license\":\"MIT\"},\"node_modules/@bananapus/ownable-v6/src/structs/JBOwner.sol\":{\"keccak256\":\"0xabdb1d1ac3542bc428519e0684e191222a67c8370296da1abce87b2865764c36\",\"urls\":[\"bzz-raw://8adfe62cee8df91cec9d99282af4971a600473e9c7cafb034c4bf09a27d56de1\",\"dweb:/ipfs/QmX4qn3ohYxTsUYyXicqMRC3BuEYL2zE1czVL9KdEvK8Fg\"],\"license\":\"MIT\"},\"node_modules/@bananapus/permission-ids-v6/src/JBPermissionIds.sol\":{\"keccak256\":\"0x5105c29834e0dce4e395e262f23089a1077404f5317c591c89f3621cdfda9628\",\"urls\":[\"bzz-raw://54deca2c06d77f5d1087911e8035d244dde2b08a5dc0dff146b86e6a314419e8\",\"dweb:/ipfs/QmNdpTioAbk6bahJx4aT1WFUY9aV182JH1Dn4FqfuqC8QC\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/enums/JBSuckerState.sol\":{\"keccak256\":\"0x0ee6d0d08cd4f538b8c9ff59d480c7c3371c4cb1971e5a67a89088b4b040a608\",\"urls\":[\"bzz-raw://b8cce8e51b084cc9a844dc1040aba00b63b01f97868d52cc9f38b9d354fd741f\",\"dweb:/ipfs/QmTveKLmdZAGbwEwaCTBwofSBtckZsDcew3E7iNTnpeskY\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/interfaces/IJBPeerChainAdjustedAccounts.sol\":{\"keccak256\":\"0x9edb4e2d8aa9becff5b761f84d16048fcc5c2136686ca05dd974f9d2b6568895\",\"urls\":[\"bzz-raw://bd9d6254c7e5c6f315d8e835b2414b943c629bf7ea8e7f23720cef433af6cc9a\",\"dweb:/ipfs/QmVDjtn5BgGhYCpFQ28b2e4rHMit9zLqZKmPCBSENFjBsT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/interfaces/IJBSucker.sol\":{\"keccak256\":\"0x570edfbf153b28f44f5dcf4b8e9ee146be16ba08aee58178d288e121edd023d4\",\"urls\":[\"bzz-raw://f67f5797159640a3d39835b7dbac501ca3f4e95fbebdf4673dc884af6c8b4de3\",\"dweb:/ipfs/QmW49DYyf2vrwMz2Jt3x2NuA6Dy4phnyGpifMpGPacQ4qz\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/interfaces/IJBSuckerDeployer.sol\":{\"keccak256\":\"0x385534f1171e96f75da0fb34c31976a8bff68e3719a87fe526a1bd2c80044826\",\"urls\":[\"bzz-raw://af89283ddccdad821f8d975175082e8a3ecdccba35ad1ec626b2cebbfe5696ec\",\"dweb:/ipfs/QmXAzpwVBH1PwpCZoXFbTXk8v4wUhiKAzXF6chpe5cgoYJ\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/interfaces/IJBSuckerRegistry.sol\":{\"keccak256\":\"0xa80cf6e229335f88468be1625cb02d65bd84f585e047a720e53661dd5c9caab2\",\"urls\":[\"bzz-raw://01b17afe90ae5f10adfac0d32d54615128ac66fae4357d85f4e12a0cd7259b8d\",\"dweb:/ipfs/QmW3reADRJmkA2ay4AqM5TcseW3ybKvdbexZBG9FuLCUAi\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/libraries/JBPeerChainAdjustedAccountsLib.sol\":{\"keccak256\":\"0x838291ed97d7089a916f02cd87487cc6fe661af548b969d8ec1fa6d5aa3a918c\",\"urls\":[\"bzz-raw://9511a6fae687968dc8813374eabb4e16322dc4acc680f9f395c7365e3cade8cc\",\"dweb:/ipfs/QmYFq7weEEu9JUCKetn5FPNjg9YGfdMArU6pFhRdkfx1kb\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBAccountingSnapshot.sol\":{\"keccak256\":\"0x3a3b48c50fe27dd4b2907dd26d9e48de0f8bf7e48e4ac42b65e4c8550b5037cf\",\"urls\":[\"bzz-raw://b61c627efb41e8bf1f77fec9e79a1d43846dfa14ec6d6dfe8b6fc93ab09c3bf8\",\"dweb:/ipfs/QmVx19cqSfeHHzr94n9iJAp45WC6sETtC6fp9SuHX8gNfF\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBChainAccounting.sol\":{\"keccak256\":\"0x40ee90d31b301b8ad7c3879afa605cf65e9f41c763b3c84f9a73f15ef67b8dc3\",\"urls\":[\"bzz-raw://0ef0660386fefb8c4761f7a96484ae88027ae7432939fb43170b209cd54a01b7\",\"dweb:/ipfs/QmSyhhHEyHswUoTT99SekwfoVnCbL9cBjEDHsXcqpWxMKM\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBClaim.sol\":{\"keccak256\":\"0xd616fb935e61727ce04832808667bd40dc121d66f5cc2f347018dfd971635dab\",\"urls\":[\"bzz-raw://dfdcfb12878dc03b4623ddfaa42afa7e8270e8a259a8c453ef4f7e916ca52876\",\"dweb:/ipfs/QmZyAUzatUq2HfGBpoKbeqkC7mpetQC27M3797wgNgkE6H\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBInboxTreeRoot.sol\":{\"keccak256\":\"0x9553483a63fbad26d7f3fc50d47bbf309f6b2b316785bc179fa83f97f6ba88f1\",\"urls\":[\"bzz-raw://fddbe03a2a31812774aba9ffe44b0d0209da182f03ddd7fb8f8f2cb5858a3923\",\"dweb:/ipfs/QmeQJHXw5Bc8s3CXr9kE7Tw35m3Tcmq7DjrEidcB2CK5D5\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBLeaf.sol\":{\"keccak256\":\"0x48da8acc3873c390430f57de4871bce06b0d9a1be75935a4367b694acab447e2\",\"urls\":[\"bzz-raw://0ecb27f67901ef293993dc257efa592191bd2464cf9c2afcf5b53a4ddaff905c\",\"dweb:/ipfs/QmdoA5SkomSqJvx7v3qn9Z1cTzzH43WDCozqoi7GBYKjaA\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBOutboxTree.sol\":{\"keccak256\":\"0x52552d8927b83d06955f7d40552b19779bc05e3d4ee58a7e026d160fb1958a92\",\"urls\":[\"bzz-raw://d1f21d7415fa29bf088f1dfc3ba2e7251f1132424194703b7dc2493839495bbe\",\"dweb:/ipfs/QmTUL5mALZi8A6QyrWrp1Qdt2e5S72nyEDPuZPwgW54dc7\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBPeerChainContext.sol\":{\"keccak256\":\"0x1da3d201771c88f2469069d3f2295fd26e2f494e0ec0c4d06d0ccb068f2b26bc\",\"urls\":[\"bzz-raw://2898b578f708e6988392fec3b1eca0eb07cb267c139ed7c1cf1b62f27a153e91\",\"dweb:/ipfs/QmVQJxAdkLZVyVGaeYywrwoA8GkTbBwLykWeroLJvS8A7w\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBPeerChainValue.sol\":{\"keccak256\":\"0x784d12e2ee229cb8242366a27636228d2df62915f8bcc64cb6d72ddcf111f655\",\"urls\":[\"bzz-raw://b7d3885e5f02a52af36487ce6fa15f11ee41674c2821c8959ad6ccaac10941fb\",\"dweb:/ipfs/QmYVdYM55ajAKE78sEkf5GZo45k4iP8t6JceDnce4bpjrW\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBRemoteToken.sol\":{\"keccak256\":\"0x972657457699a63ded3cba38b3796cf619fe1929b7e857d4861e52a06ad9b378\",\"urls\":[\"bzz-raw://b35379dc126296a4f8a47ebd2bc09101ec782677711373245b33017670deb051\",\"dweb:/ipfs/QmQs397EjjPgbZdzQR8yUC6vxMYj3nvJZ26RZ6qy9Thg9N\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBSourceContext.sol\":{\"keccak256\":\"0x1fc57c102ae28eb62103063a13289ed484c5520ce220ee59f4412e9b78f431c2\",\"urls\":[\"bzz-raw://af3a7ba1d82c982f6396cc9444fb69afe2a90279eb6b8b147ce1626bab3836f7\",\"dweb:/ipfs/QmUZybGqw84SgTbqvDk27eXQhpPYLDz7FV6o4M4oJC4chK\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBSuckerDeployerConfig.sol\":{\"keccak256\":\"0xee7d3235a13ea2a66a885f90a2623740029f58fad4121e59b46666abb598fcdd\",\"urls\":[\"bzz-raw://3702c6c3f19d11fa0d0cf8b918cdb122c27e2aec09a67386483834e98f533706\",\"dweb:/ipfs/QmZMwk65iWi5HCwLwHiqwrXSEJMnaZMEM9cW359matZ8AT\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBSuckersPair.sol\":{\"keccak256\":\"0x535f28ba838f066ea773b575f83230663761996cc358f6f9b684340403faab18\",\"urls\":[\"bzz-raw://c94e5c03989b03d66ee9cc08c3299957a25b7c3492416792d1d8fa50d11f34e3\",\"dweb:/ipfs/QmTrsUX4KySQsVZYEY6hjwtL6g5cFqFkwopMMAU47Atyqf\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/structs/JBTokenMapping.sol\":{\"keccak256\":\"0x45ab5eb3775475cbf5b2c011ed8ea78fbc719f5dc13019409f09d53e9719f97b\",\"urls\":[\"bzz-raw://7010e7fe473cc892ee5fbb8310ebf7c739bc64e4c9311b6fd63a358dc16bb634\",\"dweb:/ipfs/Qmcj73PiufP2dRdPVGV3gSfdbneYH13Kx4NP1cYbV5aVX8\"],\"license\":\"MIT\"},\"node_modules/@bananapus/suckers-v6/src/utils/MerkleLib.sol\":{\"keccak256\":\"0xb08ffa1c6d9394eed1396ecf6bf59333ec925c9cb80623248448a6f1f2a7b366\",\"urls\":[\"bzz-raw://da8df7bd8918eba5116f3ff527352f804f73dc430f03cf529b34b4bb225479d2\",\"dweb:/ipfs/QmarAXVxZAAxePcMgpzsE84E1LNnCEFZKRXjhaBUy46L74\"],\"license\":\"MIT OR Apache-2.0\"},\"node_modules/@openzeppelin/contracts/governance/utils/IVotes.sol\":{\"keccak256\":\"0xdf466d4c6aa9da903595262100def9c6d960045b2ada0357edc47953bc5e18d6\",\"urls\":[\"bzz-raw://889512f1c9468f4d5e0f90f46b849709fd6fedab29b8377f64f6c3ee8373beee\",\"dweb:/ipfs/QmefA385JqnvagxdFDpM3kxnxUtpJvkxkbTr66naQbAko9\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/interfaces/IERC5805.sol\":{\"keccak256\":\"0x8fbf3dddff71246ff9ffe21f9f0195a40583c4101c94c747691291f8b9e14ebd\",\"urls\":[\"bzz-raw://8d69db7468e95a56999df81f1c555215b3359483d610dbef17d898ef48801578\",\"dweb:/ipfs/QmSPaSUsHDGqffinNgwajKp8RUdwj3GyW3VqWWNPfwH4b4\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/interfaces/IERC6372.sol\":{\"keccak256\":\"0xed0f7f14eb30c80a82855ddc3f7267bb6290546e5847a8ffc33f599ce4bc5eb6\",\"urls\":[\"bzz-raw://63fab00bbb42ce6f132a93d1c1e1cfed5175821521fb8746caa48129787d2435\",\"dweb:/ipfs/QmVMBNhmVW1h35LsaYNyDChfyTwF8M3EW9T1JDFpsXiaQF\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/metatx/ERC2771Context.sol\":{\"keccak256\":\"0x9695d220b99dcf62910533bdf5d40d4cf6a4e04d5b106b6803a80586486dc7f7\",\"urls\":[\"bzz-raw://83b7aecd65882d8953643dce144efe91367082cc01830c9c4ed3c8a4837fb558\",\"dweb:/ipfs/QmQ5HxGavcCKjuhd8buv177qjG6A4kvxx4pZviceKdspdM\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0xf78f05f3b8c9f75570e85300d7b4600d7f6f6a198449273f31d44c1641adb46f\",\"urls\":[\"bzz-raw://e28b872613b45e0e801d4995aa4380be2531147bfe2d85c1d6275f1de514fba3\",\"dweb:/ipfs/QmeeFcfShHYaS3BdgVj78nxR28ZaVUwbvr66ud8bT6kzw9\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x88cd5e3bee2e8c36b8d9058fbcaa81ad5704281b25634122234b55ea853d8055\",\"urls\":[\"bzz-raw://8dc7e7ab5b8ea36c15027ab04221b05d1c970f47a53e9fd47ead8ca665d49c7e\",\"dweb:/ipfs/Qmeeph7fsDyfRr8vb2L8KcDEmKPb224TAayMvgqgGAnqpL\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"],\"license\":\"MIT\"},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x8891738ffe910f0cf2da09566928589bf5d63f4524dd734fd9cedbac3274dd5c\",\"urls\":[\"bzz-raw://971f954442df5c2ef5b5ebf1eb245d7105d9fbacc7386ee5c796df1d45b21617\",\"dweb:/ipfs/QmadRjHbkicwqwwh61raUEapaVEtaLMcYbQZWs9gUkgj3u\"],\"license\":\"MIT\"},\"node_modules/@prb/math/src/Common.sol\":{\"keccak256\":\"0x1949276271967e9954a65f27c1c32e1dd73cbd1f3d2af88f2fdd694ba4b7da60\",\"urls\":[\"bzz-raw://ca414ac0a29a3d0d9e194afa73029a7d94168029df6aeb5f6a4b540d0072eb14\",\"dweb:/ipfs/QmYVipmQDvcvurNZZSFGjxabWXwEpdfijYYx2b3d7ico8U\"],\"license\":\"MIT\"}},\"version\":1}",
|
|
3503
|
+
"gitCommit": "npm:@bananapus/omnichain-deployers-v6@1.0.1",
|
|
3504
|
+
"gitDirty": false,
|
|
3505
|
+
"history": []
|
|
3506
|
+
}
|