@curvefi/llamalend-api 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/.eslintrc.json +40 -0
  2. package/.github/workflows/lint.yml +15 -0
  3. package/.github/workflows/publish.yml +55 -0
  4. package/LICENSE +21 -0
  5. package/README.md +1976 -0
  6. package/lib/cache/index.d.ts +14 -0
  7. package/lib/cache/index.js +31 -0
  8. package/lib/constants/L2Networks.d.ts +1 -0
  9. package/lib/constants/L2Networks.js +1 -0
  10. package/lib/constants/abis/Controller.json +1027 -0
  11. package/lib/constants/abis/ERC20.json +222 -0
  12. package/lib/constants/abis/ERC4626.json +1674 -0
  13. package/lib/constants/abis/GaugeController.json +794 -0
  14. package/lib/constants/abis/GaugeFactoryMainnet.json +1 -0
  15. package/lib/constants/abis/GaugeFactorySidechain.json +475 -0
  16. package/lib/constants/abis/GaugeV5.json +958 -0
  17. package/lib/constants/abis/LeverageZap.json +35 -0
  18. package/lib/constants/abis/Llamma.json +984 -0
  19. package/lib/constants/abis/Minter.json +1 -0
  20. package/lib/constants/abis/MonetaryPolicy.json +221 -0
  21. package/lib/constants/abis/OneWayLendingFactoryABI.json +899 -0
  22. package/lib/constants/abis/SidechainGauge.json +939 -0
  23. package/lib/constants/abis/Vault.json +721 -0
  24. package/lib/constants/abis/crvUSD/DeleverageZap.json +248 -0
  25. package/lib/constants/abis/crvUSD/Factory.json +514 -0
  26. package/lib/constants/abis/crvUSD/HealthCalculatorZap.json +54 -0
  27. package/lib/constants/abis/crvUSD/LeverageZap.json +312 -0
  28. package/lib/constants/abis/crvUSD/MonetaryPolicy.json +294 -0
  29. package/lib/constants/abis/crvUSD/MonetaryPolicy2.json +299 -0
  30. package/lib/constants/abis/crvUSD/PegKeeper.json +411 -0
  31. package/lib/constants/abis/crvUSD/controller.json +991 -0
  32. package/lib/constants/abis/crvUSD/llamma.json +984 -0
  33. package/lib/constants/abis/gas_oracle_optimism.json +149 -0
  34. package/lib/constants/abis/gas_oracle_optimism_blob.json +203 -0
  35. package/lib/constants/aliases.d.ts +16 -0
  36. package/lib/constants/aliases.js +124 -0
  37. package/lib/constants/coins.d.ts +16 -0
  38. package/lib/constants/coins.js +24 -0
  39. package/lib/constants/llammas.d.ts +2 -0
  40. package/lib/constants/llammas.js +96 -0
  41. package/lib/constants/utils.d.ts +4 -0
  42. package/lib/constants/utils.js +27 -0
  43. package/lib/external-api.d.ts +13 -0
  44. package/lib/external-api.js +436 -0
  45. package/lib/index.d.ts +104 -0
  46. package/lib/index.js +123 -0
  47. package/lib/interfaces.d.ts +228 -0
  48. package/lib/interfaces.js +1 -0
  49. package/lib/lendMarkets/LendMarketTemplate.d.ts +510 -0
  50. package/lib/lendMarkets/LendMarketTemplate.js +4682 -0
  51. package/lib/lendMarkets/index.d.ts +3 -0
  52. package/lib/lendMarkets/index.js +3 -0
  53. package/lib/lendMarkets/lendMarketConstructor.d.ts +2 -0
  54. package/lib/lendMarkets/lendMarketConstructor.js +6 -0
  55. package/lib/llamalend.d.ts +80 -0
  56. package/lib/llamalend.js +878 -0
  57. package/lib/mintMarkets/MintMarketTemplate.d.ts +308 -0
  58. package/lib/mintMarkets/MintMarketTemplate.js +2998 -0
  59. package/lib/mintMarkets/index.d.ts +3 -0
  60. package/lib/mintMarkets/index.js +3 -0
  61. package/lib/mintMarkets/mintMarketConstructor.d.ts +2 -0
  62. package/lib/mintMarkets/mintMarketConstructor.js +4 -0
  63. package/lib/st-crvUSD.d.ts +35 -0
  64. package/lib/st-crvUSD.js +505 -0
  65. package/lib/utils.d.ts +58 -0
  66. package/lib/utils.js +661 -0
  67. package/package.json +42 -0
  68. package/src/cache/index.ts +41 -0
  69. package/src/constants/L2Networks.ts +1 -0
  70. package/src/constants/abis/Controller.json +1027 -0
  71. package/src/constants/abis/ERC20.json +222 -0
  72. package/src/constants/abis/ERC4626.json +1674 -0
  73. package/src/constants/abis/GaugeController.json +794 -0
  74. package/src/constants/abis/GaugeFactoryMainnet.json +1 -0
  75. package/src/constants/abis/GaugeFactorySidechain.json +475 -0
  76. package/src/constants/abis/GaugeV5.json +958 -0
  77. package/src/constants/abis/LeverageZap.json +35 -0
  78. package/src/constants/abis/Llamma.json +984 -0
  79. package/src/constants/abis/Minter.json +1 -0
  80. package/src/constants/abis/MonetaryPolicy.json +221 -0
  81. package/src/constants/abis/OneWayLendingFactoryABI.json +899 -0
  82. package/src/constants/abis/SidechainGauge.json +939 -0
  83. package/src/constants/abis/Vault.json +721 -0
  84. package/src/constants/abis/crvUSD/DeleverageZap.json +248 -0
  85. package/src/constants/abis/crvUSD/ERC20.json +222 -0
  86. package/src/constants/abis/crvUSD/Factory.json +514 -0
  87. package/src/constants/abis/crvUSD/HealthCalculatorZap.json +54 -0
  88. package/src/constants/abis/crvUSD/LeverageZap.json +312 -0
  89. package/src/constants/abis/crvUSD/MonetaryPolicy.json +294 -0
  90. package/src/constants/abis/crvUSD/MonetaryPolicy2.json +299 -0
  91. package/src/constants/abis/crvUSD/PegKeeper.json +411 -0
  92. package/src/constants/abis/crvUSD/controller.json +991 -0
  93. package/src/constants/abis/crvUSD/llamma.json +984 -0
  94. package/src/constants/abis/gas_oracle_optimism.json +149 -0
  95. package/src/constants/abis/gas_oracle_optimism_blob.json +203 -0
  96. package/src/constants/aliases.ts +141 -0
  97. package/src/constants/coins.ts +41 -0
  98. package/src/constants/llammas.ts +99 -0
  99. package/src/constants/utils.ts +33 -0
  100. package/src/external-api.ts +325 -0
  101. package/src/index.ts +128 -0
  102. package/src/interfaces.ts +237 -0
  103. package/src/lendMarkets/LendMarketTemplate.ts +3022 -0
  104. package/src/lendMarkets/index.ts +7 -0
  105. package/src/lendMarkets/lendMarketConstructor.ts +7 -0
  106. package/src/llamalend.ts +785 -0
  107. package/src/mintMarkets/MintMarketTemplate.ts +1781 -0
  108. package/src/mintMarkets/index.ts +7 -0
  109. package/src/mintMarkets/mintMarketConstructor.ts +5 -0
  110. package/src/st-crvUSD.ts +244 -0
  111. package/src/utils.ts +497 -0
  112. package/test/fetch.test.ts +152 -0
  113. package/test/general.test.ts +216 -0
  114. package/test/leverageBorrowMore.test.ts +245 -0
  115. package/test/leverageCreateLoan.test.ts +236 -0
  116. package/test/leverageRepay.test.ts +240 -0
  117. package/test/readme.test.ts +475 -0
  118. package/test/selfLiquidate.test.ts +57 -0
  119. package/test/selfLiquidateCrvUSD.test.ts +54 -0
  120. package/test/st_crvUSD.test.ts +68 -0
  121. package/test/swap.test.ts +62 -0
  122. package/test/swapCrvUSD.test.ts +56 -0
  123. package/test/vault.test.ts +112 -0
  124. package/tsconfig.build.json +10 -0
  125. package/tsconfig.json +72 -0
@@ -0,0 +1,1674 @@
1
+ [
2
+ {
3
+ "name": "Deposit",
4
+ "inputs": [
5
+ {
6
+ "name": "sender",
7
+ "type": "address",
8
+ "indexed": true
9
+ },
10
+ {
11
+ "name": "owner",
12
+ "type": "address",
13
+ "indexed": true
14
+ },
15
+ {
16
+ "name": "assets",
17
+ "type": "uint256",
18
+ "indexed": false
19
+ },
20
+ {
21
+ "name": "shares",
22
+ "type": "uint256",
23
+ "indexed": false
24
+ }
25
+ ],
26
+ "anonymous": false,
27
+ "type": "event"
28
+ },
29
+ {
30
+ "name": "Withdraw",
31
+ "inputs": [
32
+ {
33
+ "name": "sender",
34
+ "type": "address",
35
+ "indexed": true
36
+ },
37
+ {
38
+ "name": "receiver",
39
+ "type": "address",
40
+ "indexed": true
41
+ },
42
+ {
43
+ "name": "owner",
44
+ "type": "address",
45
+ "indexed": true
46
+ },
47
+ {
48
+ "name": "assets",
49
+ "type": "uint256",
50
+ "indexed": false
51
+ },
52
+ {
53
+ "name": "shares",
54
+ "type": "uint256",
55
+ "indexed": false
56
+ }
57
+ ],
58
+ "anonymous": false,
59
+ "type": "event"
60
+ },
61
+ {
62
+ "name": "Transfer",
63
+ "inputs": [
64
+ {
65
+ "name": "sender",
66
+ "type": "address",
67
+ "indexed": true
68
+ },
69
+ {
70
+ "name": "receiver",
71
+ "type": "address",
72
+ "indexed": true
73
+ },
74
+ {
75
+ "name": "value",
76
+ "type": "uint256",
77
+ "indexed": false
78
+ }
79
+ ],
80
+ "anonymous": false,
81
+ "type": "event"
82
+ },
83
+ {
84
+ "name": "Approval",
85
+ "inputs": [
86
+ {
87
+ "name": "owner",
88
+ "type": "address",
89
+ "indexed": true
90
+ },
91
+ {
92
+ "name": "spender",
93
+ "type": "address",
94
+ "indexed": true
95
+ },
96
+ {
97
+ "name": "value",
98
+ "type": "uint256",
99
+ "indexed": false
100
+ }
101
+ ],
102
+ "anonymous": false,
103
+ "type": "event"
104
+ },
105
+ {
106
+ "name": "StrategyChanged",
107
+ "inputs": [
108
+ {
109
+ "name": "strategy",
110
+ "type": "address",
111
+ "indexed": true
112
+ },
113
+ {
114
+ "name": "change_type",
115
+ "type": "uint256",
116
+ "indexed": true
117
+ }
118
+ ],
119
+ "anonymous": false,
120
+ "type": "event"
121
+ },
122
+ {
123
+ "name": "StrategyReported",
124
+ "inputs": [
125
+ {
126
+ "name": "strategy",
127
+ "type": "address",
128
+ "indexed": true
129
+ },
130
+ {
131
+ "name": "gain",
132
+ "type": "uint256",
133
+ "indexed": false
134
+ },
135
+ {
136
+ "name": "loss",
137
+ "type": "uint256",
138
+ "indexed": false
139
+ },
140
+ {
141
+ "name": "current_debt",
142
+ "type": "uint256",
143
+ "indexed": false
144
+ },
145
+ {
146
+ "name": "protocol_fees",
147
+ "type": "uint256",
148
+ "indexed": false
149
+ },
150
+ {
151
+ "name": "total_fees",
152
+ "type": "uint256",
153
+ "indexed": false
154
+ },
155
+ {
156
+ "name": "total_refunds",
157
+ "type": "uint256",
158
+ "indexed": false
159
+ }
160
+ ],
161
+ "anonymous": false,
162
+ "type": "event"
163
+ },
164
+ {
165
+ "name": "DebtUpdated",
166
+ "inputs": [
167
+ {
168
+ "name": "strategy",
169
+ "type": "address",
170
+ "indexed": true
171
+ },
172
+ {
173
+ "name": "current_debt",
174
+ "type": "uint256",
175
+ "indexed": false
176
+ },
177
+ {
178
+ "name": "new_debt",
179
+ "type": "uint256",
180
+ "indexed": false
181
+ }
182
+ ],
183
+ "anonymous": false,
184
+ "type": "event"
185
+ },
186
+ {
187
+ "name": "RoleSet",
188
+ "inputs": [
189
+ {
190
+ "name": "account",
191
+ "type": "address",
192
+ "indexed": true
193
+ },
194
+ {
195
+ "name": "role",
196
+ "type": "uint256",
197
+ "indexed": true
198
+ }
199
+ ],
200
+ "anonymous": false,
201
+ "type": "event"
202
+ },
203
+ {
204
+ "name": "UpdateRoleManager",
205
+ "inputs": [
206
+ {
207
+ "name": "role_manager",
208
+ "type": "address",
209
+ "indexed": true
210
+ }
211
+ ],
212
+ "anonymous": false,
213
+ "type": "event"
214
+ },
215
+ {
216
+ "name": "UpdateAccountant",
217
+ "inputs": [
218
+ {
219
+ "name": "accountant",
220
+ "type": "address",
221
+ "indexed": true
222
+ }
223
+ ],
224
+ "anonymous": false,
225
+ "type": "event"
226
+ },
227
+ {
228
+ "name": "UpdateDepositLimitModule",
229
+ "inputs": [
230
+ {
231
+ "name": "deposit_limit_module",
232
+ "type": "address",
233
+ "indexed": true
234
+ }
235
+ ],
236
+ "anonymous": false,
237
+ "type": "event"
238
+ },
239
+ {
240
+ "name": "UpdateWithdrawLimitModule",
241
+ "inputs": [
242
+ {
243
+ "name": "withdraw_limit_module",
244
+ "type": "address",
245
+ "indexed": true
246
+ }
247
+ ],
248
+ "anonymous": false,
249
+ "type": "event"
250
+ },
251
+ {
252
+ "name": "UpdateDefaultQueue",
253
+ "inputs": [
254
+ {
255
+ "name": "new_default_queue",
256
+ "type": "address[]",
257
+ "indexed": false
258
+ }
259
+ ],
260
+ "anonymous": false,
261
+ "type": "event"
262
+ },
263
+ {
264
+ "name": "UpdateUseDefaultQueue",
265
+ "inputs": [
266
+ {
267
+ "name": "use_default_queue",
268
+ "type": "bool",
269
+ "indexed": false
270
+ }
271
+ ],
272
+ "anonymous": false,
273
+ "type": "event"
274
+ },
275
+ {
276
+ "name": "UpdatedMaxDebtForStrategy",
277
+ "inputs": [
278
+ {
279
+ "name": "sender",
280
+ "type": "address",
281
+ "indexed": true
282
+ },
283
+ {
284
+ "name": "strategy",
285
+ "type": "address",
286
+ "indexed": true
287
+ },
288
+ {
289
+ "name": "new_debt",
290
+ "type": "uint256",
291
+ "indexed": false
292
+ }
293
+ ],
294
+ "anonymous": false,
295
+ "type": "event"
296
+ },
297
+ {
298
+ "name": "UpdateDepositLimit",
299
+ "inputs": [
300
+ {
301
+ "name": "deposit_limit",
302
+ "type": "uint256",
303
+ "indexed": false
304
+ }
305
+ ],
306
+ "anonymous": false,
307
+ "type": "event"
308
+ },
309
+ {
310
+ "name": "UpdateMinimumTotalIdle",
311
+ "inputs": [
312
+ {
313
+ "name": "minimum_total_idle",
314
+ "type": "uint256",
315
+ "indexed": false
316
+ }
317
+ ],
318
+ "anonymous": false,
319
+ "type": "event"
320
+ },
321
+ {
322
+ "name": "UpdateProfitMaxUnlockTime",
323
+ "inputs": [
324
+ {
325
+ "name": "profit_max_unlock_time",
326
+ "type": "uint256",
327
+ "indexed": false
328
+ }
329
+ ],
330
+ "anonymous": false,
331
+ "type": "event"
332
+ },
333
+ {
334
+ "name": "DebtPurchased",
335
+ "inputs": [
336
+ {
337
+ "name": "strategy",
338
+ "type": "address",
339
+ "indexed": true
340
+ },
341
+ {
342
+ "name": "amount",
343
+ "type": "uint256",
344
+ "indexed": false
345
+ }
346
+ ],
347
+ "anonymous": false,
348
+ "type": "event"
349
+ },
350
+ {
351
+ "name": "Shutdown",
352
+ "inputs": [],
353
+ "anonymous": false,
354
+ "type": "event"
355
+ },
356
+ {
357
+ "stateMutability": "nonpayable",
358
+ "type": "constructor",
359
+ "inputs": [],
360
+ "outputs": []
361
+ },
362
+ {
363
+ "stateMutability": "nonpayable",
364
+ "type": "function",
365
+ "name": "initialize",
366
+ "inputs": [
367
+ {
368
+ "name": "asset",
369
+ "type": "address"
370
+ },
371
+ {
372
+ "name": "name",
373
+ "type": "string"
374
+ },
375
+ {
376
+ "name": "symbol",
377
+ "type": "string"
378
+ },
379
+ {
380
+ "name": "role_manager",
381
+ "type": "address"
382
+ },
383
+ {
384
+ "name": "profit_max_unlock_time",
385
+ "type": "uint256"
386
+ }
387
+ ],
388
+ "outputs": []
389
+ },
390
+ {
391
+ "stateMutability": "nonpayable",
392
+ "type": "function",
393
+ "name": "set_accountant",
394
+ "inputs": [
395
+ {
396
+ "name": "new_accountant",
397
+ "type": "address"
398
+ }
399
+ ],
400
+ "outputs": []
401
+ },
402
+ {
403
+ "stateMutability": "nonpayable",
404
+ "type": "function",
405
+ "name": "set_default_queue",
406
+ "inputs": [
407
+ {
408
+ "name": "new_default_queue",
409
+ "type": "address[]"
410
+ }
411
+ ],
412
+ "outputs": []
413
+ },
414
+ {
415
+ "stateMutability": "nonpayable",
416
+ "type": "function",
417
+ "name": "set_use_default_queue",
418
+ "inputs": [
419
+ {
420
+ "name": "use_default_queue",
421
+ "type": "bool"
422
+ }
423
+ ],
424
+ "outputs": []
425
+ },
426
+ {
427
+ "stateMutability": "nonpayable",
428
+ "type": "function",
429
+ "name": "set_deposit_limit",
430
+ "inputs": [
431
+ {
432
+ "name": "deposit_limit",
433
+ "type": "uint256"
434
+ }
435
+ ],
436
+ "outputs": []
437
+ },
438
+ {
439
+ "stateMutability": "nonpayable",
440
+ "type": "function",
441
+ "name": "set_deposit_limit",
442
+ "inputs": [
443
+ {
444
+ "name": "deposit_limit",
445
+ "type": "uint256"
446
+ },
447
+ {
448
+ "name": "override",
449
+ "type": "bool"
450
+ }
451
+ ],
452
+ "outputs": []
453
+ },
454
+ {
455
+ "stateMutability": "nonpayable",
456
+ "type": "function",
457
+ "name": "set_deposit_limit_module",
458
+ "inputs": [
459
+ {
460
+ "name": "deposit_limit_module",
461
+ "type": "address"
462
+ }
463
+ ],
464
+ "outputs": []
465
+ },
466
+ {
467
+ "stateMutability": "nonpayable",
468
+ "type": "function",
469
+ "name": "set_deposit_limit_module",
470
+ "inputs": [
471
+ {
472
+ "name": "deposit_limit_module",
473
+ "type": "address"
474
+ },
475
+ {
476
+ "name": "override",
477
+ "type": "bool"
478
+ }
479
+ ],
480
+ "outputs": []
481
+ },
482
+ {
483
+ "stateMutability": "nonpayable",
484
+ "type": "function",
485
+ "name": "set_withdraw_limit_module",
486
+ "inputs": [
487
+ {
488
+ "name": "withdraw_limit_module",
489
+ "type": "address"
490
+ }
491
+ ],
492
+ "outputs": []
493
+ },
494
+ {
495
+ "stateMutability": "nonpayable",
496
+ "type": "function",
497
+ "name": "set_minimum_total_idle",
498
+ "inputs": [
499
+ {
500
+ "name": "minimum_total_idle",
501
+ "type": "uint256"
502
+ }
503
+ ],
504
+ "outputs": []
505
+ },
506
+ {
507
+ "stateMutability": "nonpayable",
508
+ "type": "function",
509
+ "name": "setProfitMaxUnlockTime",
510
+ "inputs": [
511
+ {
512
+ "name": "new_profit_max_unlock_time",
513
+ "type": "uint256"
514
+ }
515
+ ],
516
+ "outputs": []
517
+ },
518
+ {
519
+ "stateMutability": "nonpayable",
520
+ "type": "function",
521
+ "name": "set_role",
522
+ "inputs": [
523
+ {
524
+ "name": "account",
525
+ "type": "address"
526
+ },
527
+ {
528
+ "name": "role",
529
+ "type": "uint256"
530
+ }
531
+ ],
532
+ "outputs": []
533
+ },
534
+ {
535
+ "stateMutability": "nonpayable",
536
+ "type": "function",
537
+ "name": "add_role",
538
+ "inputs": [
539
+ {
540
+ "name": "account",
541
+ "type": "address"
542
+ },
543
+ {
544
+ "name": "role",
545
+ "type": "uint256"
546
+ }
547
+ ],
548
+ "outputs": []
549
+ },
550
+ {
551
+ "stateMutability": "nonpayable",
552
+ "type": "function",
553
+ "name": "remove_role",
554
+ "inputs": [
555
+ {
556
+ "name": "account",
557
+ "type": "address"
558
+ },
559
+ {
560
+ "name": "role",
561
+ "type": "uint256"
562
+ }
563
+ ],
564
+ "outputs": []
565
+ },
566
+ {
567
+ "stateMutability": "nonpayable",
568
+ "type": "function",
569
+ "name": "transfer_role_manager",
570
+ "inputs": [
571
+ {
572
+ "name": "role_manager",
573
+ "type": "address"
574
+ }
575
+ ],
576
+ "outputs": []
577
+ },
578
+ {
579
+ "stateMutability": "nonpayable",
580
+ "type": "function",
581
+ "name": "accept_role_manager",
582
+ "inputs": [],
583
+ "outputs": []
584
+ },
585
+ {
586
+ "stateMutability": "view",
587
+ "type": "function",
588
+ "name": "isShutdown",
589
+ "inputs": [],
590
+ "outputs": [
591
+ {
592
+ "name": "",
593
+ "type": "bool"
594
+ }
595
+ ]
596
+ },
597
+ {
598
+ "stateMutability": "view",
599
+ "type": "function",
600
+ "name": "unlockedShares",
601
+ "inputs": [],
602
+ "outputs": [
603
+ {
604
+ "name": "",
605
+ "type": "uint256"
606
+ }
607
+ ]
608
+ },
609
+ {
610
+ "stateMutability": "view",
611
+ "type": "function",
612
+ "name": "pricePerShare",
613
+ "inputs": [],
614
+ "outputs": [
615
+ {
616
+ "name": "",
617
+ "type": "uint256"
618
+ }
619
+ ]
620
+ },
621
+ {
622
+ "stateMutability": "view",
623
+ "type": "function",
624
+ "name": "get_default_queue",
625
+ "inputs": [],
626
+ "outputs": [
627
+ {
628
+ "name": "",
629
+ "type": "address[]"
630
+ }
631
+ ]
632
+ },
633
+ {
634
+ "stateMutability": "nonpayable",
635
+ "type": "function",
636
+ "name": "process_report",
637
+ "inputs": [
638
+ {
639
+ "name": "strategy",
640
+ "type": "address"
641
+ }
642
+ ],
643
+ "outputs": [
644
+ {
645
+ "name": "",
646
+ "type": "uint256"
647
+ },
648
+ {
649
+ "name": "",
650
+ "type": "uint256"
651
+ }
652
+ ]
653
+ },
654
+ {
655
+ "stateMutability": "nonpayable",
656
+ "type": "function",
657
+ "name": "buy_debt",
658
+ "inputs": [
659
+ {
660
+ "name": "strategy",
661
+ "type": "address"
662
+ },
663
+ {
664
+ "name": "amount",
665
+ "type": "uint256"
666
+ }
667
+ ],
668
+ "outputs": []
669
+ },
670
+ {
671
+ "stateMutability": "nonpayable",
672
+ "type": "function",
673
+ "name": "add_strategy",
674
+ "inputs": [
675
+ {
676
+ "name": "new_strategy",
677
+ "type": "address"
678
+ }
679
+ ],
680
+ "outputs": []
681
+ },
682
+ {
683
+ "stateMutability": "nonpayable",
684
+ "type": "function",
685
+ "name": "add_strategy",
686
+ "inputs": [
687
+ {
688
+ "name": "new_strategy",
689
+ "type": "address"
690
+ },
691
+ {
692
+ "name": "add_to_queue",
693
+ "type": "bool"
694
+ }
695
+ ],
696
+ "outputs": []
697
+ },
698
+ {
699
+ "stateMutability": "nonpayable",
700
+ "type": "function",
701
+ "name": "revoke_strategy",
702
+ "inputs": [
703
+ {
704
+ "name": "strategy",
705
+ "type": "address"
706
+ }
707
+ ],
708
+ "outputs": []
709
+ },
710
+ {
711
+ "stateMutability": "nonpayable",
712
+ "type": "function",
713
+ "name": "force_revoke_strategy",
714
+ "inputs": [
715
+ {
716
+ "name": "strategy",
717
+ "type": "address"
718
+ }
719
+ ],
720
+ "outputs": []
721
+ },
722
+ {
723
+ "stateMutability": "nonpayable",
724
+ "type": "function",
725
+ "name": "update_max_debt_for_strategy",
726
+ "inputs": [
727
+ {
728
+ "name": "strategy",
729
+ "type": "address"
730
+ },
731
+ {
732
+ "name": "new_max_debt",
733
+ "type": "uint256"
734
+ }
735
+ ],
736
+ "outputs": []
737
+ },
738
+ {
739
+ "stateMutability": "nonpayable",
740
+ "type": "function",
741
+ "name": "update_debt",
742
+ "inputs": [
743
+ {
744
+ "name": "strategy",
745
+ "type": "address"
746
+ },
747
+ {
748
+ "name": "target_debt",
749
+ "type": "uint256"
750
+ }
751
+ ],
752
+ "outputs": [
753
+ {
754
+ "name": "",
755
+ "type": "uint256"
756
+ }
757
+ ]
758
+ },
759
+ {
760
+ "stateMutability": "nonpayable",
761
+ "type": "function",
762
+ "name": "update_debt",
763
+ "inputs": [
764
+ {
765
+ "name": "strategy",
766
+ "type": "address"
767
+ },
768
+ {
769
+ "name": "target_debt",
770
+ "type": "uint256"
771
+ },
772
+ {
773
+ "name": "max_loss",
774
+ "type": "uint256"
775
+ }
776
+ ],
777
+ "outputs": [
778
+ {
779
+ "name": "",
780
+ "type": "uint256"
781
+ }
782
+ ]
783
+ },
784
+ {
785
+ "stateMutability": "nonpayable",
786
+ "type": "function",
787
+ "name": "shutdown_vault",
788
+ "inputs": [],
789
+ "outputs": []
790
+ },
791
+ {
792
+ "stateMutability": "nonpayable",
793
+ "type": "function",
794
+ "name": "deposit",
795
+ "inputs": [
796
+ {
797
+ "name": "assets",
798
+ "type": "uint256"
799
+ },
800
+ {
801
+ "name": "receiver",
802
+ "type": "address"
803
+ }
804
+ ],
805
+ "outputs": [
806
+ {
807
+ "name": "",
808
+ "type": "uint256"
809
+ }
810
+ ]
811
+ },
812
+ {
813
+ "stateMutability": "nonpayable",
814
+ "type": "function",
815
+ "name": "mint",
816
+ "inputs": [
817
+ {
818
+ "name": "shares",
819
+ "type": "uint256"
820
+ },
821
+ {
822
+ "name": "receiver",
823
+ "type": "address"
824
+ }
825
+ ],
826
+ "outputs": [
827
+ {
828
+ "name": "",
829
+ "type": "uint256"
830
+ }
831
+ ]
832
+ },
833
+ {
834
+ "stateMutability": "nonpayable",
835
+ "type": "function",
836
+ "name": "withdraw",
837
+ "inputs": [
838
+ {
839
+ "name": "assets",
840
+ "type": "uint256"
841
+ },
842
+ {
843
+ "name": "receiver",
844
+ "type": "address"
845
+ },
846
+ {
847
+ "name": "owner",
848
+ "type": "address"
849
+ }
850
+ ],
851
+ "outputs": [
852
+ {
853
+ "name": "",
854
+ "type": "uint256"
855
+ }
856
+ ]
857
+ },
858
+ {
859
+ "stateMutability": "nonpayable",
860
+ "type": "function",
861
+ "name": "redeem",
862
+ "inputs": [
863
+ {
864
+ "name": "shares",
865
+ "type": "uint256"
866
+ },
867
+ {
868
+ "name": "receiver",
869
+ "type": "address"
870
+ },
871
+ {
872
+ "name": "owner",
873
+ "type": "address"
874
+ }
875
+ ],
876
+ "outputs": [
877
+ {
878
+ "name": "",
879
+ "type": "uint256"
880
+ }
881
+ ]
882
+ },
883
+ {
884
+ "stateMutability": "nonpayable",
885
+ "type": "function",
886
+ "name": "approve",
887
+ "inputs": [
888
+ {
889
+ "name": "spender",
890
+ "type": "address"
891
+ },
892
+ {
893
+ "name": "amount",
894
+ "type": "uint256"
895
+ }
896
+ ],
897
+ "outputs": [
898
+ {
899
+ "name": "",
900
+ "type": "bool"
901
+ }
902
+ ]
903
+ },
904
+ {
905
+ "stateMutability": "nonpayable",
906
+ "type": "function",
907
+ "name": "transfer",
908
+ "inputs": [
909
+ {
910
+ "name": "receiver",
911
+ "type": "address"
912
+ },
913
+ {
914
+ "name": "amount",
915
+ "type": "uint256"
916
+ }
917
+ ],
918
+ "outputs": [
919
+ {
920
+ "name": "",
921
+ "type": "bool"
922
+ }
923
+ ]
924
+ },
925
+ {
926
+ "stateMutability": "nonpayable",
927
+ "type": "function",
928
+ "name": "transferFrom",
929
+ "inputs": [
930
+ {
931
+ "name": "sender",
932
+ "type": "address"
933
+ },
934
+ {
935
+ "name": "receiver",
936
+ "type": "address"
937
+ },
938
+ {
939
+ "name": "amount",
940
+ "type": "uint256"
941
+ }
942
+ ],
943
+ "outputs": [
944
+ {
945
+ "name": "",
946
+ "type": "bool"
947
+ }
948
+ ]
949
+ },
950
+ {
951
+ "stateMutability": "nonpayable",
952
+ "type": "function",
953
+ "name": "permit",
954
+ "inputs": [
955
+ {
956
+ "name": "owner",
957
+ "type": "address"
958
+ },
959
+ {
960
+ "name": "spender",
961
+ "type": "address"
962
+ },
963
+ {
964
+ "name": "amount",
965
+ "type": "uint256"
966
+ },
967
+ {
968
+ "name": "deadline",
969
+ "type": "uint256"
970
+ },
971
+ {
972
+ "name": "v",
973
+ "type": "uint8"
974
+ },
975
+ {
976
+ "name": "r",
977
+ "type": "bytes32"
978
+ },
979
+ {
980
+ "name": "s",
981
+ "type": "bytes32"
982
+ }
983
+ ],
984
+ "outputs": [
985
+ {
986
+ "name": "",
987
+ "type": "bool"
988
+ }
989
+ ]
990
+ },
991
+ {
992
+ "stateMutability": "view",
993
+ "type": "function",
994
+ "name": "balanceOf",
995
+ "inputs": [
996
+ {
997
+ "name": "addr",
998
+ "type": "address"
999
+ }
1000
+ ],
1001
+ "outputs": [
1002
+ {
1003
+ "name": "",
1004
+ "type": "uint256"
1005
+ }
1006
+ ]
1007
+ },
1008
+ {
1009
+ "stateMutability": "view",
1010
+ "type": "function",
1011
+ "name": "totalSupply",
1012
+ "inputs": [],
1013
+ "outputs": [
1014
+ {
1015
+ "name": "",
1016
+ "type": "uint256"
1017
+ }
1018
+ ]
1019
+ },
1020
+ {
1021
+ "stateMutability": "view",
1022
+ "type": "function",
1023
+ "name": "totalAssets",
1024
+ "inputs": [],
1025
+ "outputs": [
1026
+ {
1027
+ "name": "",
1028
+ "type": "uint256"
1029
+ }
1030
+ ]
1031
+ },
1032
+ {
1033
+ "stateMutability": "view",
1034
+ "type": "function",
1035
+ "name": "totalIdle",
1036
+ "inputs": [],
1037
+ "outputs": [
1038
+ {
1039
+ "name": "",
1040
+ "type": "uint256"
1041
+ }
1042
+ ]
1043
+ },
1044
+ {
1045
+ "stateMutability": "view",
1046
+ "type": "function",
1047
+ "name": "totalDebt",
1048
+ "inputs": [],
1049
+ "outputs": [
1050
+ {
1051
+ "name": "",
1052
+ "type": "uint256"
1053
+ }
1054
+ ]
1055
+ },
1056
+ {
1057
+ "stateMutability": "view",
1058
+ "type": "function",
1059
+ "name": "convertToShares",
1060
+ "inputs": [
1061
+ {
1062
+ "name": "assets",
1063
+ "type": "uint256"
1064
+ }
1065
+ ],
1066
+ "outputs": [
1067
+ {
1068
+ "name": "",
1069
+ "type": "uint256"
1070
+ }
1071
+ ]
1072
+ },
1073
+ {
1074
+ "stateMutability": "view",
1075
+ "type": "function",
1076
+ "name": "previewDeposit",
1077
+ "inputs": [
1078
+ {
1079
+ "name": "assets",
1080
+ "type": "uint256"
1081
+ }
1082
+ ],
1083
+ "outputs": [
1084
+ {
1085
+ "name": "",
1086
+ "type": "uint256"
1087
+ }
1088
+ ]
1089
+ },
1090
+ {
1091
+ "stateMutability": "view",
1092
+ "type": "function",
1093
+ "name": "previewMint",
1094
+ "inputs": [
1095
+ {
1096
+ "name": "shares",
1097
+ "type": "uint256"
1098
+ }
1099
+ ],
1100
+ "outputs": [
1101
+ {
1102
+ "name": "",
1103
+ "type": "uint256"
1104
+ }
1105
+ ]
1106
+ },
1107
+ {
1108
+ "stateMutability": "view",
1109
+ "type": "function",
1110
+ "name": "convertToAssets",
1111
+ "inputs": [
1112
+ {
1113
+ "name": "shares",
1114
+ "type": "uint256"
1115
+ }
1116
+ ],
1117
+ "outputs": [
1118
+ {
1119
+ "name": "",
1120
+ "type": "uint256"
1121
+ }
1122
+ ]
1123
+ },
1124
+ {
1125
+ "stateMutability": "view",
1126
+ "type": "function",
1127
+ "name": "maxDeposit",
1128
+ "inputs": [
1129
+ {
1130
+ "name": "receiver",
1131
+ "type": "address"
1132
+ }
1133
+ ],
1134
+ "outputs": [
1135
+ {
1136
+ "name": "",
1137
+ "type": "uint256"
1138
+ }
1139
+ ]
1140
+ },
1141
+ {
1142
+ "stateMutability": "view",
1143
+ "type": "function",
1144
+ "name": "maxMint",
1145
+ "inputs": [
1146
+ {
1147
+ "name": "receiver",
1148
+ "type": "address"
1149
+ }
1150
+ ],
1151
+ "outputs": [
1152
+ {
1153
+ "name": "",
1154
+ "type": "uint256"
1155
+ }
1156
+ ]
1157
+ },
1158
+ {
1159
+ "stateMutability": "view",
1160
+ "type": "function",
1161
+ "name": "maxWithdraw",
1162
+ "inputs": [
1163
+ {
1164
+ "name": "owner",
1165
+ "type": "address"
1166
+ }
1167
+ ],
1168
+ "outputs": [
1169
+ {
1170
+ "name": "",
1171
+ "type": "uint256"
1172
+ }
1173
+ ]
1174
+ },
1175
+ {
1176
+ "stateMutability": "view",
1177
+ "type": "function",
1178
+ "name": "maxWithdraw",
1179
+ "inputs": [
1180
+ {
1181
+ "name": "owner",
1182
+ "type": "address"
1183
+ },
1184
+ {
1185
+ "name": "max_loss",
1186
+ "type": "uint256"
1187
+ }
1188
+ ],
1189
+ "outputs": [
1190
+ {
1191
+ "name": "",
1192
+ "type": "uint256"
1193
+ }
1194
+ ]
1195
+ },
1196
+ {
1197
+ "stateMutability": "view",
1198
+ "type": "function",
1199
+ "name": "maxWithdraw",
1200
+ "inputs": [
1201
+ {
1202
+ "name": "owner",
1203
+ "type": "address"
1204
+ },
1205
+ {
1206
+ "name": "max_loss",
1207
+ "type": "uint256"
1208
+ },
1209
+ {
1210
+ "name": "strategies",
1211
+ "type": "address[]"
1212
+ }
1213
+ ],
1214
+ "outputs": [
1215
+ {
1216
+ "name": "",
1217
+ "type": "uint256"
1218
+ }
1219
+ ]
1220
+ },
1221
+ {
1222
+ "stateMutability": "view",
1223
+ "type": "function",
1224
+ "name": "maxRedeem",
1225
+ "inputs": [
1226
+ {
1227
+ "name": "owner",
1228
+ "type": "address"
1229
+ }
1230
+ ],
1231
+ "outputs": [
1232
+ {
1233
+ "name": "",
1234
+ "type": "uint256"
1235
+ }
1236
+ ]
1237
+ },
1238
+ {
1239
+ "stateMutability": "view",
1240
+ "type": "function",
1241
+ "name": "maxRedeem",
1242
+ "inputs": [
1243
+ {
1244
+ "name": "owner",
1245
+ "type": "address"
1246
+ },
1247
+ {
1248
+ "name": "max_loss",
1249
+ "type": "uint256"
1250
+ }
1251
+ ],
1252
+ "outputs": [
1253
+ {
1254
+ "name": "",
1255
+ "type": "uint256"
1256
+ }
1257
+ ]
1258
+ },
1259
+ {
1260
+ "stateMutability": "view",
1261
+ "type": "function",
1262
+ "name": "maxRedeem",
1263
+ "inputs": [
1264
+ {
1265
+ "name": "owner",
1266
+ "type": "address"
1267
+ },
1268
+ {
1269
+ "name": "max_loss",
1270
+ "type": "uint256"
1271
+ },
1272
+ {
1273
+ "name": "strategies",
1274
+ "type": "address[]"
1275
+ }
1276
+ ],
1277
+ "outputs": [
1278
+ {
1279
+ "name": "",
1280
+ "type": "uint256"
1281
+ }
1282
+ ]
1283
+ },
1284
+ {
1285
+ "stateMutability": "view",
1286
+ "type": "function",
1287
+ "name": "previewWithdraw",
1288
+ "inputs": [
1289
+ {
1290
+ "name": "assets",
1291
+ "type": "uint256"
1292
+ }
1293
+ ],
1294
+ "outputs": [
1295
+ {
1296
+ "name": "",
1297
+ "type": "uint256"
1298
+ }
1299
+ ]
1300
+ },
1301
+ {
1302
+ "stateMutability": "view",
1303
+ "type": "function",
1304
+ "name": "previewRedeem",
1305
+ "inputs": [
1306
+ {
1307
+ "name": "shares",
1308
+ "type": "uint256"
1309
+ }
1310
+ ],
1311
+ "outputs": [
1312
+ {
1313
+ "name": "",
1314
+ "type": "uint256"
1315
+ }
1316
+ ]
1317
+ },
1318
+ {
1319
+ "stateMutability": "view",
1320
+ "type": "function",
1321
+ "name": "FACTORY",
1322
+ "inputs": [],
1323
+ "outputs": [
1324
+ {
1325
+ "name": "",
1326
+ "type": "address"
1327
+ }
1328
+ ]
1329
+ },
1330
+ {
1331
+ "stateMutability": "view",
1332
+ "type": "function",
1333
+ "name": "apiVersion",
1334
+ "inputs": [],
1335
+ "outputs": [
1336
+ {
1337
+ "name": "",
1338
+ "type": "string"
1339
+ }
1340
+ ]
1341
+ },
1342
+ {
1343
+ "stateMutability": "view",
1344
+ "type": "function",
1345
+ "name": "assess_share_of_unrealised_losses",
1346
+ "inputs": [
1347
+ {
1348
+ "name": "strategy",
1349
+ "type": "address"
1350
+ },
1351
+ {
1352
+ "name": "assets_needed",
1353
+ "type": "uint256"
1354
+ }
1355
+ ],
1356
+ "outputs": [
1357
+ {
1358
+ "name": "",
1359
+ "type": "uint256"
1360
+ }
1361
+ ]
1362
+ },
1363
+ {
1364
+ "stateMutability": "view",
1365
+ "type": "function",
1366
+ "name": "profitMaxUnlockTime",
1367
+ "inputs": [],
1368
+ "outputs": [
1369
+ {
1370
+ "name": "",
1371
+ "type": "uint256"
1372
+ }
1373
+ ]
1374
+ },
1375
+ {
1376
+ "stateMutability": "view",
1377
+ "type": "function",
1378
+ "name": "fullProfitUnlockDate",
1379
+ "inputs": [],
1380
+ "outputs": [
1381
+ {
1382
+ "name": "",
1383
+ "type": "uint256"
1384
+ }
1385
+ ]
1386
+ },
1387
+ {
1388
+ "stateMutability": "view",
1389
+ "type": "function",
1390
+ "name": "profitUnlockingRate",
1391
+ "inputs": [],
1392
+ "outputs": [
1393
+ {
1394
+ "name": "",
1395
+ "type": "uint256"
1396
+ }
1397
+ ]
1398
+ },
1399
+ {
1400
+ "stateMutability": "view",
1401
+ "type": "function",
1402
+ "name": "lastProfitUpdate",
1403
+ "inputs": [],
1404
+ "outputs": [
1405
+ {
1406
+ "name": "",
1407
+ "type": "uint256"
1408
+ }
1409
+ ]
1410
+ },
1411
+ {
1412
+ "stateMutability": "view",
1413
+ "type": "function",
1414
+ "name": "DOMAIN_SEPARATOR",
1415
+ "inputs": [],
1416
+ "outputs": [
1417
+ {
1418
+ "name": "",
1419
+ "type": "bytes32"
1420
+ }
1421
+ ]
1422
+ },
1423
+ {
1424
+ "stateMutability": "view",
1425
+ "type": "function",
1426
+ "name": "asset",
1427
+ "inputs": [],
1428
+ "outputs": [
1429
+ {
1430
+ "name": "",
1431
+ "type": "address"
1432
+ }
1433
+ ]
1434
+ },
1435
+ {
1436
+ "stateMutability": "view",
1437
+ "type": "function",
1438
+ "name": "decimals",
1439
+ "inputs": [],
1440
+ "outputs": [
1441
+ {
1442
+ "name": "",
1443
+ "type": "uint8"
1444
+ }
1445
+ ]
1446
+ },
1447
+ {
1448
+ "stateMutability": "view",
1449
+ "type": "function",
1450
+ "name": "strategies",
1451
+ "inputs": [
1452
+ {
1453
+ "name": "arg0",
1454
+ "type": "address"
1455
+ }
1456
+ ],
1457
+ "outputs": [
1458
+ {
1459
+ "name": "",
1460
+ "type": "tuple",
1461
+ "components": [
1462
+ {
1463
+ "name": "activation",
1464
+ "type": "uint256"
1465
+ },
1466
+ {
1467
+ "name": "last_report",
1468
+ "type": "uint256"
1469
+ },
1470
+ {
1471
+ "name": "current_debt",
1472
+ "type": "uint256"
1473
+ },
1474
+ {
1475
+ "name": "max_debt",
1476
+ "type": "uint256"
1477
+ }
1478
+ ]
1479
+ }
1480
+ ]
1481
+ },
1482
+ {
1483
+ "stateMutability": "view",
1484
+ "type": "function",
1485
+ "name": "default_queue",
1486
+ "inputs": [
1487
+ {
1488
+ "name": "arg0",
1489
+ "type": "uint256"
1490
+ }
1491
+ ],
1492
+ "outputs": [
1493
+ {
1494
+ "name": "",
1495
+ "type": "address"
1496
+ }
1497
+ ]
1498
+ },
1499
+ {
1500
+ "stateMutability": "view",
1501
+ "type": "function",
1502
+ "name": "use_default_queue",
1503
+ "inputs": [],
1504
+ "outputs": [
1505
+ {
1506
+ "name": "",
1507
+ "type": "bool"
1508
+ }
1509
+ ]
1510
+ },
1511
+ {
1512
+ "stateMutability": "view",
1513
+ "type": "function",
1514
+ "name": "allowance",
1515
+ "inputs": [
1516
+ {
1517
+ "name": "arg0",
1518
+ "type": "address"
1519
+ },
1520
+ {
1521
+ "name": "arg1",
1522
+ "type": "address"
1523
+ }
1524
+ ],
1525
+ "outputs": [
1526
+ {
1527
+ "name": "",
1528
+ "type": "uint256"
1529
+ }
1530
+ ]
1531
+ },
1532
+ {
1533
+ "stateMutability": "view",
1534
+ "type": "function",
1535
+ "name": "minimum_total_idle",
1536
+ "inputs": [],
1537
+ "outputs": [
1538
+ {
1539
+ "name": "",
1540
+ "type": "uint256"
1541
+ }
1542
+ ]
1543
+ },
1544
+ {
1545
+ "stateMutability": "view",
1546
+ "type": "function",
1547
+ "name": "deposit_limit",
1548
+ "inputs": [],
1549
+ "outputs": [
1550
+ {
1551
+ "name": "",
1552
+ "type": "uint256"
1553
+ }
1554
+ ]
1555
+ },
1556
+ {
1557
+ "stateMutability": "view",
1558
+ "type": "function",
1559
+ "name": "accountant",
1560
+ "inputs": [],
1561
+ "outputs": [
1562
+ {
1563
+ "name": "",
1564
+ "type": "address"
1565
+ }
1566
+ ]
1567
+ },
1568
+ {
1569
+ "stateMutability": "view",
1570
+ "type": "function",
1571
+ "name": "deposit_limit_module",
1572
+ "inputs": [],
1573
+ "outputs": [
1574
+ {
1575
+ "name": "",
1576
+ "type": "address"
1577
+ }
1578
+ ]
1579
+ },
1580
+ {
1581
+ "stateMutability": "view",
1582
+ "type": "function",
1583
+ "name": "withdraw_limit_module",
1584
+ "inputs": [],
1585
+ "outputs": [
1586
+ {
1587
+ "name": "",
1588
+ "type": "address"
1589
+ }
1590
+ ]
1591
+ },
1592
+ {
1593
+ "stateMutability": "view",
1594
+ "type": "function",
1595
+ "name": "roles",
1596
+ "inputs": [
1597
+ {
1598
+ "name": "arg0",
1599
+ "type": "address"
1600
+ }
1601
+ ],
1602
+ "outputs": [
1603
+ {
1604
+ "name": "",
1605
+ "type": "uint256"
1606
+ }
1607
+ ]
1608
+ },
1609
+ {
1610
+ "stateMutability": "view",
1611
+ "type": "function",
1612
+ "name": "role_manager",
1613
+ "inputs": [],
1614
+ "outputs": [
1615
+ {
1616
+ "name": "",
1617
+ "type": "address"
1618
+ }
1619
+ ]
1620
+ },
1621
+ {
1622
+ "stateMutability": "view",
1623
+ "type": "function",
1624
+ "name": "future_role_manager",
1625
+ "inputs": [],
1626
+ "outputs": [
1627
+ {
1628
+ "name": "",
1629
+ "type": "address"
1630
+ }
1631
+ ]
1632
+ },
1633
+ {
1634
+ "stateMutability": "view",
1635
+ "type": "function",
1636
+ "name": "name",
1637
+ "inputs": [],
1638
+ "outputs": [
1639
+ {
1640
+ "name": "",
1641
+ "type": "string"
1642
+ }
1643
+ ]
1644
+ },
1645
+ {
1646
+ "stateMutability": "view",
1647
+ "type": "function",
1648
+ "name": "symbol",
1649
+ "inputs": [],
1650
+ "outputs": [
1651
+ {
1652
+ "name": "",
1653
+ "type": "string"
1654
+ }
1655
+ ]
1656
+ },
1657
+ {
1658
+ "stateMutability": "view",
1659
+ "type": "function",
1660
+ "name": "nonces",
1661
+ "inputs": [
1662
+ {
1663
+ "name": "arg0",
1664
+ "type": "address"
1665
+ }
1666
+ ],
1667
+ "outputs": [
1668
+ {
1669
+ "name": "",
1670
+ "type": "uint256"
1671
+ }
1672
+ ]
1673
+ }
1674
+ ]