defi-state-querier 0.0.9__py3-none-any.whl → 0.1.1__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. defi_services/__init__.py +1 -1
  2. defi_services/abis/lending/apeswape/__init__.py +0 -0
  3. defi_services/abis/lending/apeswape/apeswap_comptroller_abi.py +2235 -0
  4. defi_services/abis/lending/apeswape/apeswap_lens_abi.py +747 -0
  5. defi_services/abis/lending/apeswape/apswap_ctoken_abi.py +1485 -0
  6. defi_services/abis/lending/wepiggy/wepiggy_comptroller_abi.py +1684 -0
  7. defi_services/abis/lending/wepiggy/wepiggy_distribution_abi.py +959 -1041
  8. defi_services/abis/lending/wepiggy/wepiggy_lens_abi.py +1098 -0
  9. defi_services/constants/entities/lending_constant.py +3 -1
  10. defi_services/constants/entities/lending_services.py +28 -13
  11. defi_services/services/lending/apeswap_services.py +88 -0
  12. defi_services/services/lending/compound_service.py +1 -0
  13. defi_services/services/lending/{granary_v1_services.py → granary_services.py} +38 -18
  14. defi_services/services/lending/iron_bank_service.py +5 -1
  15. defi_services/services/lending/lending_info/arbitrum/granary_arbitrum.py +67 -0
  16. defi_services/services/lending/lending_info/arbitrum/wepiggy_arbitrum.py +36 -0
  17. defi_services/services/lending/lending_info/avalanche/granary_avalanche.py +55 -0
  18. defi_services/services/lending/lending_info/avalanche/iron_bank_avalanche.py +55 -0
  19. defi_services/services/lending/lending_info/bsc/apeswap_bsc.py +52 -0
  20. defi_services/services/lending/lending_info/bsc/granary_bsc.py +49 -0
  21. defi_services/services/lending/lending_info/bsc/liqee_bsc.py +85 -0
  22. defi_services/services/lending/lending_info/bsc/wepiggy_bsc.py +76 -0
  23. defi_services/services/lending/lending_info/ethereum/{granary_v1_eth.py → granary_eth.py} +1 -1
  24. defi_services/services/lending/lending_info/ethereum/iron_bank_eth.py +0 -1
  25. defi_services/services/lending/lending_info/ethereum/spark_eth.py +41 -94
  26. defi_services/services/lending/lending_info/ethereum/wepiggy_eth.py +18 -7
  27. defi_services/services/lending/lending_info/fantom/granary_ftm.py +67 -0
  28. defi_services/services/lending/lending_info/optimism/granary_optimism.py +84 -0
  29. defi_services/services/lending/lending_info/optimism/iron_bank_optimism.py +43 -0
  30. defi_services/services/lending/lending_info/optimism/wepiggy_optimism.py +40 -0
  31. defi_services/services/lending/lending_info/polygon/wepiggy_polygon.py +52 -0
  32. defi_services/services/lending/liqee_service.py +5 -3
  33. defi_services/services/lending/morpho_aave_v2_services.py +2 -2
  34. defi_services/services/lending/morpho_aave_v3_services.py +2 -2
  35. defi_services/services/lending/morpho_compound_services.py +1 -1
  36. defi_services/services/lending/spark_services.py +32 -0
  37. defi_services/services/lending/wepiggy_services.py +26 -237
  38. {defi_state_querier-0.0.9.dist-info → defi_state_querier-0.1.1.dist-info}/METADATA +1 -1
  39. {defi_state_querier-0.0.9.dist-info → defi_state_querier-0.1.1.dist-info}/RECORD +42 -21
  40. {defi_state_querier-0.0.9.dist-info → defi_state_querier-0.1.1.dist-info}/LICENSE +0 -0
  41. {defi_state_querier-0.0.9.dist-info → defi_state_querier-0.1.1.dist-info}/WHEEL +0 -0
  42. {defi_state_querier-0.0.9.dist-info → defi_state_querier-0.1.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1098 @@
1
+ import json
2
+
3
+ WEPIGGY_LENS_ABI = json.loads('''
4
+ [
5
+ {
6
+ "inputs": [
7
+ {
8
+ "internalType": "contract ComptrollerLensInterface",
9
+ "name": "_comptroller",
10
+ "type": "address"
11
+ },
12
+ {
13
+ "internalType": "contract PiggyDistributionInterface",
14
+ "name": "_distribution",
15
+ "type": "address"
16
+ },
17
+ {
18
+ "internalType": "string",
19
+ "name": "_pNativeToken",
20
+ "type": "string"
21
+ },
22
+ {
23
+ "internalType": "string",
24
+ "name": "_nativeToken",
25
+ "type": "string"
26
+ },
27
+ {
28
+ "internalType": "string",
29
+ "name": "_nativeName",
30
+ "type": "string"
31
+ }
32
+ ],
33
+ "stateMutability": "nonpayable",
34
+ "type": "constructor"
35
+ },
36
+ {
37
+ "inputs": [],
38
+ "name": "all",
39
+ "outputs": [
40
+ {
41
+ "components": [
42
+ {
43
+ "internalType": "address",
44
+ "name": "pTokenAddress",
45
+ "type": "address"
46
+ },
47
+ {
48
+ "internalType": "uint256",
49
+ "name": "pTokenDecimals",
50
+ "type": "uint256"
51
+ },
52
+ {
53
+ "internalType": "address",
54
+ "name": "underlyingAddress",
55
+ "type": "address"
56
+ },
57
+ {
58
+ "internalType": "uint256",
59
+ "name": "underlyingDecimals",
60
+ "type": "uint256"
61
+ },
62
+ {
63
+ "internalType": "string",
64
+ "name": "underlyingSymbol",
65
+ "type": "string"
66
+ },
67
+ {
68
+ "internalType": "string",
69
+ "name": "underlyingName",
70
+ "type": "string"
71
+ },
72
+ {
73
+ "internalType": "uint256",
74
+ "name": "exchangeRateCurrent",
75
+ "type": "uint256"
76
+ },
77
+ {
78
+ "internalType": "uint256",
79
+ "name": "supplyRatePerBlock",
80
+ "type": "uint256"
81
+ },
82
+ {
83
+ "internalType": "uint256",
84
+ "name": "borrowRatePerBlock",
85
+ "type": "uint256"
86
+ },
87
+ {
88
+ "internalType": "uint256",
89
+ "name": "reserveFactorMantissa",
90
+ "type": "uint256"
91
+ },
92
+ {
93
+ "internalType": "uint256",
94
+ "name": "collateralFactorMantissa",
95
+ "type": "uint256"
96
+ },
97
+ {
98
+ "internalType": "uint256",
99
+ "name": "totalBorrows",
100
+ "type": "uint256"
101
+ },
102
+ {
103
+ "internalType": "uint256",
104
+ "name": "totalReserves",
105
+ "type": "uint256"
106
+ },
107
+ {
108
+ "internalType": "uint256",
109
+ "name": "totalSupply",
110
+ "type": "uint256"
111
+ },
112
+ {
113
+ "internalType": "uint256",
114
+ "name": "totalCash",
115
+ "type": "uint256"
116
+ },
117
+ {
118
+ "internalType": "uint256",
119
+ "name": "price",
120
+ "type": "uint256"
121
+ },
122
+ {
123
+ "internalType": "uint256",
124
+ "name": "mintCap",
125
+ "type": "uint256"
126
+ },
127
+ {
128
+ "internalType": "uint256",
129
+ "name": "borrowCap",
130
+ "type": "uint256"
131
+ },
132
+ {
133
+ "internalType": "bool",
134
+ "name": "isListed",
135
+ "type": "bool"
136
+ },
137
+ {
138
+ "internalType": "uint256",
139
+ "name": "blockNumber",
140
+ "type": "uint256"
141
+ },
142
+ {
143
+ "internalType": "uint256",
144
+ "name": "accrualBlockNumber",
145
+ "type": "uint256"
146
+ },
147
+ {
148
+ "internalType": "uint256",
149
+ "name": "borrowIndex",
150
+ "type": "uint256"
151
+ }
152
+ ],
153
+ "internalType": "struct WePiggyLensV2.PTokenMetadata[]",
154
+ "name": "",
155
+ "type": "tuple[]"
156
+ },
157
+ {
158
+ "components": [
159
+ {
160
+ "internalType": "contract PTokenLensInterface",
161
+ "name": "market",
162
+ "type": "address"
163
+ },
164
+ {
165
+ "internalType": "uint256",
166
+ "name": "blocksPerYear",
167
+ "type": "uint256"
168
+ },
169
+ {
170
+ "internalType": "uint256",
171
+ "name": "multiplierPerBlock",
172
+ "type": "uint256"
173
+ },
174
+ {
175
+ "internalType": "uint256",
176
+ "name": "baseRatePerBlock",
177
+ "type": "uint256"
178
+ },
179
+ {
180
+ "internalType": "uint256",
181
+ "name": "jumpMultiplierPerBlock",
182
+ "type": "uint256"
183
+ },
184
+ {
185
+ "internalType": "uint256",
186
+ "name": "kink",
187
+ "type": "uint256"
188
+ }
189
+ ],
190
+ "internalType": "struct WePiggyLensV2.InterestRateModel[]",
191
+ "name": "",
192
+ "type": "tuple[]"
193
+ },
194
+ {
195
+ "components": [
196
+ {
197
+ "internalType": "contract PTokenLensInterface",
198
+ "name": "market",
199
+ "type": "address"
200
+ },
201
+ {
202
+ "internalType": "uint256",
203
+ "name": "wpcSpeed",
204
+ "type": "uint256"
205
+ }
206
+ ],
207
+ "internalType": "struct WePiggyLensV2.PTokenWpcSpeed[]",
208
+ "name": "",
209
+ "type": "tuple[]"
210
+ }
211
+ ],
212
+ "stateMutability": "view",
213
+ "type": "function"
214
+ },
215
+ {
216
+ "inputs": [
217
+ {
218
+ "internalType": "address payable",
219
+ "name": "account",
220
+ "type": "address"
221
+ }
222
+ ],
223
+ "name": "allForAccount",
224
+ "outputs": [
225
+ {
226
+ "components": [
227
+ {
228
+ "internalType": "contract PTokenLensInterface[]",
229
+ "name": "markets",
230
+ "type": "address[]"
231
+ },
232
+ {
233
+ "internalType": "uint256",
234
+ "name": "liquidity",
235
+ "type": "uint256"
236
+ },
237
+ {
238
+ "internalType": "uint256",
239
+ "name": "shortfall",
240
+ "type": "uint256"
241
+ }
242
+ ],
243
+ "internalType": "struct WePiggyLensV2.AccountLimits",
244
+ "name": "",
245
+ "type": "tuple"
246
+ },
247
+ {
248
+ "components": [
249
+ {
250
+ "internalType": "address",
251
+ "name": "pToken",
252
+ "type": "address"
253
+ },
254
+ {
255
+ "internalType": "uint256",
256
+ "name": "balance",
257
+ "type": "uint256"
258
+ },
259
+ {
260
+ "internalType": "uint256",
261
+ "name": "borrowBalance",
262
+ "type": "uint256"
263
+ },
264
+ {
265
+ "internalType": "uint256",
266
+ "name": "exchangeRateMantissa",
267
+ "type": "uint256"
268
+ }
269
+ ],
270
+ "internalType": "struct WePiggyLensV2.PTokenBalances[]",
271
+ "name": "",
272
+ "type": "tuple[]"
273
+ },
274
+ {
275
+ "components": [
276
+ {
277
+ "internalType": "address",
278
+ "name": "pTokenAddress",
279
+ "type": "address"
280
+ },
281
+ {
282
+ "internalType": "uint256",
283
+ "name": "pTokenDecimals",
284
+ "type": "uint256"
285
+ },
286
+ {
287
+ "internalType": "address",
288
+ "name": "underlyingAddress",
289
+ "type": "address"
290
+ },
291
+ {
292
+ "internalType": "uint256",
293
+ "name": "underlyingDecimals",
294
+ "type": "uint256"
295
+ },
296
+ {
297
+ "internalType": "string",
298
+ "name": "underlyingSymbol",
299
+ "type": "string"
300
+ },
301
+ {
302
+ "internalType": "string",
303
+ "name": "underlyingName",
304
+ "type": "string"
305
+ },
306
+ {
307
+ "internalType": "uint256",
308
+ "name": "exchangeRateCurrent",
309
+ "type": "uint256"
310
+ },
311
+ {
312
+ "internalType": "uint256",
313
+ "name": "supplyRatePerBlock",
314
+ "type": "uint256"
315
+ },
316
+ {
317
+ "internalType": "uint256",
318
+ "name": "borrowRatePerBlock",
319
+ "type": "uint256"
320
+ },
321
+ {
322
+ "internalType": "uint256",
323
+ "name": "reserveFactorMantissa",
324
+ "type": "uint256"
325
+ },
326
+ {
327
+ "internalType": "uint256",
328
+ "name": "collateralFactorMantissa",
329
+ "type": "uint256"
330
+ },
331
+ {
332
+ "internalType": "uint256",
333
+ "name": "totalBorrows",
334
+ "type": "uint256"
335
+ },
336
+ {
337
+ "internalType": "uint256",
338
+ "name": "totalReserves",
339
+ "type": "uint256"
340
+ },
341
+ {
342
+ "internalType": "uint256",
343
+ "name": "totalSupply",
344
+ "type": "uint256"
345
+ },
346
+ {
347
+ "internalType": "uint256",
348
+ "name": "totalCash",
349
+ "type": "uint256"
350
+ },
351
+ {
352
+ "internalType": "uint256",
353
+ "name": "price",
354
+ "type": "uint256"
355
+ },
356
+ {
357
+ "internalType": "uint256",
358
+ "name": "mintCap",
359
+ "type": "uint256"
360
+ },
361
+ {
362
+ "internalType": "uint256",
363
+ "name": "borrowCap",
364
+ "type": "uint256"
365
+ },
366
+ {
367
+ "internalType": "bool",
368
+ "name": "isListed",
369
+ "type": "bool"
370
+ },
371
+ {
372
+ "internalType": "uint256",
373
+ "name": "blockNumber",
374
+ "type": "uint256"
375
+ },
376
+ {
377
+ "internalType": "uint256",
378
+ "name": "accrualBlockNumber",
379
+ "type": "uint256"
380
+ },
381
+ {
382
+ "internalType": "uint256",
383
+ "name": "borrowIndex",
384
+ "type": "uint256"
385
+ }
386
+ ],
387
+ "internalType": "struct WePiggyLensV2.PTokenMetadata[]",
388
+ "name": "",
389
+ "type": "tuple[]"
390
+ },
391
+ {
392
+ "components": [
393
+ {
394
+ "internalType": "contract PTokenLensInterface",
395
+ "name": "market",
396
+ "type": "address"
397
+ },
398
+ {
399
+ "internalType": "uint256",
400
+ "name": "blocksPerYear",
401
+ "type": "uint256"
402
+ },
403
+ {
404
+ "internalType": "uint256",
405
+ "name": "multiplierPerBlock",
406
+ "type": "uint256"
407
+ },
408
+ {
409
+ "internalType": "uint256",
410
+ "name": "baseRatePerBlock",
411
+ "type": "uint256"
412
+ },
413
+ {
414
+ "internalType": "uint256",
415
+ "name": "jumpMultiplierPerBlock",
416
+ "type": "uint256"
417
+ },
418
+ {
419
+ "internalType": "uint256",
420
+ "name": "kink",
421
+ "type": "uint256"
422
+ }
423
+ ],
424
+ "internalType": "struct WePiggyLensV2.InterestRateModel[]",
425
+ "name": "",
426
+ "type": "tuple[]"
427
+ }
428
+ ],
429
+ "stateMutability": "view",
430
+ "type": "function"
431
+ },
432
+ {
433
+ "inputs": [],
434
+ "name": "comptroller",
435
+ "outputs": [
436
+ {
437
+ "internalType": "contract ComptrollerLensInterface",
438
+ "name": "",
439
+ "type": "address"
440
+ }
441
+ ],
442
+ "stateMutability": "view",
443
+ "type": "function"
444
+ },
445
+ {
446
+ "inputs": [],
447
+ "name": "distribution",
448
+ "outputs": [
449
+ {
450
+ "internalType": "contract PiggyDistributionInterface",
451
+ "name": "",
452
+ "type": "address"
453
+ }
454
+ ],
455
+ "stateMutability": "view",
456
+ "type": "function"
457
+ },
458
+ {
459
+ "inputs": [
460
+ {
461
+ "internalType": "address payable",
462
+ "name": "account",
463
+ "type": "address"
464
+ }
465
+ ],
466
+ "name": "getAccountLimits",
467
+ "outputs": [
468
+ {
469
+ "components": [
470
+ {
471
+ "internalType": "contract PTokenLensInterface[]",
472
+ "name": "markets",
473
+ "type": "address[]"
474
+ },
475
+ {
476
+ "internalType": "uint256",
477
+ "name": "liquidity",
478
+ "type": "uint256"
479
+ },
480
+ {
481
+ "internalType": "uint256",
482
+ "name": "shortfall",
483
+ "type": "uint256"
484
+ }
485
+ ],
486
+ "internalType": "struct WePiggyLensV2.AccountLimits",
487
+ "name": "",
488
+ "type": "tuple"
489
+ }
490
+ ],
491
+ "stateMutability": "view",
492
+ "type": "function"
493
+ },
494
+ {
495
+ "inputs": [
496
+ {
497
+ "internalType": "contract PTokenLensInterface",
498
+ "name": "pToken",
499
+ "type": "address"
500
+ }
501
+ ],
502
+ "name": "getInterestRateModel",
503
+ "outputs": [
504
+ {
505
+ "components": [
506
+ {
507
+ "internalType": "contract PTokenLensInterface",
508
+ "name": "market",
509
+ "type": "address"
510
+ },
511
+ {
512
+ "internalType": "uint256",
513
+ "name": "blocksPerYear",
514
+ "type": "uint256"
515
+ },
516
+ {
517
+ "internalType": "uint256",
518
+ "name": "multiplierPerBlock",
519
+ "type": "uint256"
520
+ },
521
+ {
522
+ "internalType": "uint256",
523
+ "name": "baseRatePerBlock",
524
+ "type": "uint256"
525
+ },
526
+ {
527
+ "internalType": "uint256",
528
+ "name": "jumpMultiplierPerBlock",
529
+ "type": "uint256"
530
+ },
531
+ {
532
+ "internalType": "uint256",
533
+ "name": "kink",
534
+ "type": "uint256"
535
+ }
536
+ ],
537
+ "internalType": "struct WePiggyLensV2.InterestRateModel",
538
+ "name": "",
539
+ "type": "tuple"
540
+ }
541
+ ],
542
+ "stateMutability": "view",
543
+ "type": "function"
544
+ },
545
+ {
546
+ "inputs": [
547
+ {
548
+ "internalType": "contract PTokenLensInterface[]",
549
+ "name": "pTokens",
550
+ "type": "address[]"
551
+ }
552
+ ],
553
+ "name": "getInterestRateModels",
554
+ "outputs": [
555
+ {
556
+ "components": [
557
+ {
558
+ "internalType": "contract PTokenLensInterface",
559
+ "name": "market",
560
+ "type": "address"
561
+ },
562
+ {
563
+ "internalType": "uint256",
564
+ "name": "blocksPerYear",
565
+ "type": "uint256"
566
+ },
567
+ {
568
+ "internalType": "uint256",
569
+ "name": "multiplierPerBlock",
570
+ "type": "uint256"
571
+ },
572
+ {
573
+ "internalType": "uint256",
574
+ "name": "baseRatePerBlock",
575
+ "type": "uint256"
576
+ },
577
+ {
578
+ "internalType": "uint256",
579
+ "name": "jumpMultiplierPerBlock",
580
+ "type": "uint256"
581
+ },
582
+ {
583
+ "internalType": "uint256",
584
+ "name": "kink",
585
+ "type": "uint256"
586
+ }
587
+ ],
588
+ "internalType": "struct WePiggyLensV2.InterestRateModel[]",
589
+ "name": "",
590
+ "type": "tuple[]"
591
+ }
592
+ ],
593
+ "stateMutability": "view",
594
+ "type": "function"
595
+ },
596
+ {
597
+ "inputs": [
598
+ {
599
+ "internalType": "contract PTokenLensInterface",
600
+ "name": "pToken",
601
+ "type": "address"
602
+ }
603
+ ],
604
+ "name": "getWpcSpeed",
605
+ "outputs": [
606
+ {
607
+ "components": [
608
+ {
609
+ "internalType": "contract PTokenLensInterface",
610
+ "name": "market",
611
+ "type": "address"
612
+ },
613
+ {
614
+ "internalType": "uint256",
615
+ "name": "wpcSpeed",
616
+ "type": "uint256"
617
+ }
618
+ ],
619
+ "internalType": "struct WePiggyLensV2.PTokenWpcSpeed",
620
+ "name": "",
621
+ "type": "tuple"
622
+ }
623
+ ],
624
+ "stateMutability": "view",
625
+ "type": "function"
626
+ },
627
+ {
628
+ "inputs": [
629
+ {
630
+ "internalType": "contract PTokenLensInterface[]",
631
+ "name": "pTokens",
632
+ "type": "address[]"
633
+ }
634
+ ],
635
+ "name": "getWpcSpeeds",
636
+ "outputs": [
637
+ {
638
+ "components": [
639
+ {
640
+ "internalType": "contract PTokenLensInterface",
641
+ "name": "market",
642
+ "type": "address"
643
+ },
644
+ {
645
+ "internalType": "uint256",
646
+ "name": "wpcSpeed",
647
+ "type": "uint256"
648
+ }
649
+ ],
650
+ "internalType": "struct WePiggyLensV2.PTokenWpcSpeed[]",
651
+ "name": "",
652
+ "type": "tuple[]"
653
+ }
654
+ ],
655
+ "stateMutability": "view",
656
+ "type": "function"
657
+ },
658
+ {
659
+ "inputs": [],
660
+ "name": "nativeName",
661
+ "outputs": [
662
+ {
663
+ "internalType": "string",
664
+ "name": "",
665
+ "type": "string"
666
+ }
667
+ ],
668
+ "stateMutability": "view",
669
+ "type": "function"
670
+ },
671
+ {
672
+ "inputs": [],
673
+ "name": "nativeToken",
674
+ "outputs": [
675
+ {
676
+ "internalType": "string",
677
+ "name": "",
678
+ "type": "string"
679
+ }
680
+ ],
681
+ "stateMutability": "view",
682
+ "type": "function"
683
+ },
684
+ {
685
+ "inputs": [],
686
+ "name": "owner",
687
+ "outputs": [
688
+ {
689
+ "internalType": "address",
690
+ "name": "",
691
+ "type": "address"
692
+ }
693
+ ],
694
+ "stateMutability": "view",
695
+ "type": "function"
696
+ },
697
+ {
698
+ "inputs": [],
699
+ "name": "pNativeToken",
700
+ "outputs": [
701
+ {
702
+ "internalType": "string",
703
+ "name": "",
704
+ "type": "string"
705
+ }
706
+ ],
707
+ "stateMutability": "view",
708
+ "type": "function"
709
+ },
710
+ {
711
+ "inputs": [
712
+ {
713
+ "internalType": "contract PTokenLensInterface",
714
+ "name": "pToken",
715
+ "type": "address"
716
+ },
717
+ {
718
+ "internalType": "address payable",
719
+ "name": "account",
720
+ "type": "address"
721
+ }
722
+ ],
723
+ "name": "pTokenBalances",
724
+ "outputs": [
725
+ {
726
+ "components": [
727
+ {
728
+ "internalType": "address",
729
+ "name": "pToken",
730
+ "type": "address"
731
+ },
732
+ {
733
+ "internalType": "uint256",
734
+ "name": "balance",
735
+ "type": "uint256"
736
+ },
737
+ {
738
+ "internalType": "uint256",
739
+ "name": "borrowBalance",
740
+ "type": "uint256"
741
+ },
742
+ {
743
+ "internalType": "uint256",
744
+ "name": "exchangeRateMantissa",
745
+ "type": "uint256"
746
+ }
747
+ ],
748
+ "internalType": "struct WePiggyLensV2.PTokenBalances",
749
+ "name": "",
750
+ "type": "tuple"
751
+ }
752
+ ],
753
+ "stateMutability": "view",
754
+ "type": "function"
755
+ },
756
+ {
757
+ "inputs": [
758
+ {
759
+ "internalType": "contract PTokenLensInterface[]",
760
+ "name": "pTokens",
761
+ "type": "address[]"
762
+ },
763
+ {
764
+ "internalType": "address payable",
765
+ "name": "account",
766
+ "type": "address"
767
+ }
768
+ ],
769
+ "name": "pTokenBalancesAll",
770
+ "outputs": [
771
+ {
772
+ "components": [
773
+ {
774
+ "internalType": "address",
775
+ "name": "pToken",
776
+ "type": "address"
777
+ },
778
+ {
779
+ "internalType": "uint256",
780
+ "name": "balance",
781
+ "type": "uint256"
782
+ },
783
+ {
784
+ "internalType": "uint256",
785
+ "name": "borrowBalance",
786
+ "type": "uint256"
787
+ },
788
+ {
789
+ "internalType": "uint256",
790
+ "name": "exchangeRateMantissa",
791
+ "type": "uint256"
792
+ }
793
+ ],
794
+ "internalType": "struct WePiggyLensV2.PTokenBalances[]",
795
+ "name": "",
796
+ "type": "tuple[]"
797
+ }
798
+ ],
799
+ "stateMutability": "view",
800
+ "type": "function"
801
+ },
802
+ {
803
+ "inputs": [
804
+ {
805
+ "internalType": "contract PTokenLensInterface",
806
+ "name": "pToken",
807
+ "type": "address"
808
+ }
809
+ ],
810
+ "name": "pTokenMetadata",
811
+ "outputs": [
812
+ {
813
+ "components": [
814
+ {
815
+ "internalType": "address",
816
+ "name": "pTokenAddress",
817
+ "type": "address"
818
+ },
819
+ {
820
+ "internalType": "uint256",
821
+ "name": "pTokenDecimals",
822
+ "type": "uint256"
823
+ },
824
+ {
825
+ "internalType": "address",
826
+ "name": "underlyingAddress",
827
+ "type": "address"
828
+ },
829
+ {
830
+ "internalType": "uint256",
831
+ "name": "underlyingDecimals",
832
+ "type": "uint256"
833
+ },
834
+ {
835
+ "internalType": "string",
836
+ "name": "underlyingSymbol",
837
+ "type": "string"
838
+ },
839
+ {
840
+ "internalType": "string",
841
+ "name": "underlyingName",
842
+ "type": "string"
843
+ },
844
+ {
845
+ "internalType": "uint256",
846
+ "name": "exchangeRateCurrent",
847
+ "type": "uint256"
848
+ },
849
+ {
850
+ "internalType": "uint256",
851
+ "name": "supplyRatePerBlock",
852
+ "type": "uint256"
853
+ },
854
+ {
855
+ "internalType": "uint256",
856
+ "name": "borrowRatePerBlock",
857
+ "type": "uint256"
858
+ },
859
+ {
860
+ "internalType": "uint256",
861
+ "name": "reserveFactorMantissa",
862
+ "type": "uint256"
863
+ },
864
+ {
865
+ "internalType": "uint256",
866
+ "name": "collateralFactorMantissa",
867
+ "type": "uint256"
868
+ },
869
+ {
870
+ "internalType": "uint256",
871
+ "name": "totalBorrows",
872
+ "type": "uint256"
873
+ },
874
+ {
875
+ "internalType": "uint256",
876
+ "name": "totalReserves",
877
+ "type": "uint256"
878
+ },
879
+ {
880
+ "internalType": "uint256",
881
+ "name": "totalSupply",
882
+ "type": "uint256"
883
+ },
884
+ {
885
+ "internalType": "uint256",
886
+ "name": "totalCash",
887
+ "type": "uint256"
888
+ },
889
+ {
890
+ "internalType": "uint256",
891
+ "name": "price",
892
+ "type": "uint256"
893
+ },
894
+ {
895
+ "internalType": "uint256",
896
+ "name": "mintCap",
897
+ "type": "uint256"
898
+ },
899
+ {
900
+ "internalType": "uint256",
901
+ "name": "borrowCap",
902
+ "type": "uint256"
903
+ },
904
+ {
905
+ "internalType": "bool",
906
+ "name": "isListed",
907
+ "type": "bool"
908
+ },
909
+ {
910
+ "internalType": "uint256",
911
+ "name": "blockNumber",
912
+ "type": "uint256"
913
+ },
914
+ {
915
+ "internalType": "uint256",
916
+ "name": "accrualBlockNumber",
917
+ "type": "uint256"
918
+ },
919
+ {
920
+ "internalType": "uint256",
921
+ "name": "borrowIndex",
922
+ "type": "uint256"
923
+ }
924
+ ],
925
+ "internalType": "struct WePiggyLensV2.PTokenMetadata",
926
+ "name": "",
927
+ "type": "tuple"
928
+ }
929
+ ],
930
+ "stateMutability": "view",
931
+ "type": "function"
932
+ },
933
+ {
934
+ "inputs": [
935
+ {
936
+ "internalType": "contract PTokenLensInterface[]",
937
+ "name": "pTokens",
938
+ "type": "address[]"
939
+ }
940
+ ],
941
+ "name": "pTokenMetadataAll",
942
+ "outputs": [
943
+ {
944
+ "components": [
945
+ {
946
+ "internalType": "address",
947
+ "name": "pTokenAddress",
948
+ "type": "address"
949
+ },
950
+ {
951
+ "internalType": "uint256",
952
+ "name": "pTokenDecimals",
953
+ "type": "uint256"
954
+ },
955
+ {
956
+ "internalType": "address",
957
+ "name": "underlyingAddress",
958
+ "type": "address"
959
+ },
960
+ {
961
+ "internalType": "uint256",
962
+ "name": "underlyingDecimals",
963
+ "type": "uint256"
964
+ },
965
+ {
966
+ "internalType": "string",
967
+ "name": "underlyingSymbol",
968
+ "type": "string"
969
+ },
970
+ {
971
+ "internalType": "string",
972
+ "name": "underlyingName",
973
+ "type": "string"
974
+ },
975
+ {
976
+ "internalType": "uint256",
977
+ "name": "exchangeRateCurrent",
978
+ "type": "uint256"
979
+ },
980
+ {
981
+ "internalType": "uint256",
982
+ "name": "supplyRatePerBlock",
983
+ "type": "uint256"
984
+ },
985
+ {
986
+ "internalType": "uint256",
987
+ "name": "borrowRatePerBlock",
988
+ "type": "uint256"
989
+ },
990
+ {
991
+ "internalType": "uint256",
992
+ "name": "reserveFactorMantissa",
993
+ "type": "uint256"
994
+ },
995
+ {
996
+ "internalType": "uint256",
997
+ "name": "collateralFactorMantissa",
998
+ "type": "uint256"
999
+ },
1000
+ {
1001
+ "internalType": "uint256",
1002
+ "name": "totalBorrows",
1003
+ "type": "uint256"
1004
+ },
1005
+ {
1006
+ "internalType": "uint256",
1007
+ "name": "totalReserves",
1008
+ "type": "uint256"
1009
+ },
1010
+ {
1011
+ "internalType": "uint256",
1012
+ "name": "totalSupply",
1013
+ "type": "uint256"
1014
+ },
1015
+ {
1016
+ "internalType": "uint256",
1017
+ "name": "totalCash",
1018
+ "type": "uint256"
1019
+ },
1020
+ {
1021
+ "internalType": "uint256",
1022
+ "name": "price",
1023
+ "type": "uint256"
1024
+ },
1025
+ {
1026
+ "internalType": "uint256",
1027
+ "name": "mintCap",
1028
+ "type": "uint256"
1029
+ },
1030
+ {
1031
+ "internalType": "uint256",
1032
+ "name": "borrowCap",
1033
+ "type": "uint256"
1034
+ },
1035
+ {
1036
+ "internalType": "bool",
1037
+ "name": "isListed",
1038
+ "type": "bool"
1039
+ },
1040
+ {
1041
+ "internalType": "uint256",
1042
+ "name": "blockNumber",
1043
+ "type": "uint256"
1044
+ },
1045
+ {
1046
+ "internalType": "uint256",
1047
+ "name": "accrualBlockNumber",
1048
+ "type": "uint256"
1049
+ },
1050
+ {
1051
+ "internalType": "uint256",
1052
+ "name": "borrowIndex",
1053
+ "type": "uint256"
1054
+ }
1055
+ ],
1056
+ "internalType": "struct WePiggyLensV2.PTokenMetadata[]",
1057
+ "name": "",
1058
+ "type": "tuple[]"
1059
+ }
1060
+ ],
1061
+ "stateMutability": "view",
1062
+ "type": "function"
1063
+ },
1064
+ {
1065
+ "inputs": [
1066
+ {
1067
+ "internalType": "contract ComptrollerLensInterface",
1068
+ "name": "_comptroller",
1069
+ "type": "address"
1070
+ },
1071
+ {
1072
+ "internalType": "contract PiggyDistributionInterface",
1073
+ "name": "_distribution",
1074
+ "type": "address"
1075
+ },
1076
+ {
1077
+ "internalType": "string",
1078
+ "name": "_pNativeToken",
1079
+ "type": "string"
1080
+ },
1081
+ {
1082
+ "internalType": "string",
1083
+ "name": "_nativeToken",
1084
+ "type": "string"
1085
+ },
1086
+ {
1087
+ "internalType": "string",
1088
+ "name": "_nativeName",
1089
+ "type": "string"
1090
+ }
1091
+ ],
1092
+ "name": "updateProperties",
1093
+ "outputs": [],
1094
+ "stateMutability": "nonpayable",
1095
+ "type": "function"
1096
+ }
1097
+ ]
1098
+ ''')