@pendle/core-v2 6.8.1 → 6.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/build/artifacts/contracts/interfaces/IPPTLooper.sol/IPPTLooper.dbg.json +1 -1
  2. package/build/artifacts/contracts/interfaces/IPPTLooper.sol/IPPTLooper.json +244 -249
  3. package/build/artifacts/contracts/interfaces/IPPTLooper.sol/IPPTLooperEIP712Types.dbg.json +1 -1
  4. package/build/artifacts/contracts/pt-looping/PTLooperBase.sol/PTLooperBase.dbg.json +1 -1
  5. package/build/artifacts/contracts/pt-looping/PTLooperBase.sol/PTLooperBase.json +244 -249
  6. package/build/artifacts/contracts/pt-looping/PTLooperEIP712TypesEncodeDataLib.sol/PTLooperEIP712TypesEncodeDataLib.dbg.json +1 -1
  7. package/build/artifacts/contracts/pt-looping/PTLooperEIP712TypesEncodeDataLib.sol/PTLooperEIP712TypesEncodeDataLib.json +2 -2
  8. package/build/artifacts/contracts/pt-looping/PendlePTLooper.sol/PendlePTLooper.dbg.json +1 -1
  9. package/build/artifacts/contracts/pt-looping/PendlePTLooper.sol/PendlePTLooper.json +246 -251
  10. package/build/artifacts/contracts/pt-looping/money-market/BaseMoneyMarket.sol/BaseMoneyMarket.dbg.json +1 -1
  11. package/build/artifacts/contracts/pt-looping/money-market/BaseMoneyMarketView.sol/BaseMoneyMarketView.dbg.json +1 -1
  12. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave/AaveMoneyMarket.sol/AaveMoneyMarket.dbg.json +1 -1
  13. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave/AaveMoneyMarket.sol/AaveMoneyMarket.json +2 -2
  14. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave/AaveMoneyMarketView.sol/AaveMoneyMarketView.dbg.json +1 -1
  15. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave/AaveMoneyMarketView.sol/AaveMoneyMarketView.json +2 -2
  16. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MMPayloadLib.sol/AaveV4MMPayloadLib.dbg.json +4 -0
  17. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MMPayloadLib.sol/AaveV4MMPayloadLib.json +10 -0
  18. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarket.sol/AaveV4MoneyMarket.dbg.json +4 -0
  19. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarket.sol/AaveV4MoneyMarket.json +615 -0
  20. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarketView.sol/AaveV4MoneyMarketView.dbg.json +4 -0
  21. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarketView.sol/AaveV4MoneyMarketView.json +280 -0
  22. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IAaveOracle.sol/IAaveOracle.dbg.json +4 -0
  23. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IAaveOracle.sol/IAaveOracle.json +30 -0
  24. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IHubBase.sol/IHubBase.dbg.json +4 -0
  25. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IHubBase.sol/IHubBase.json +322 -0
  26. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/ISpoke.sol/ISpoke.dbg.json +4 -0
  27. package/build/artifacts/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/ISpoke.sol/ISpoke.json +398 -0
  28. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMMPayloadLib.sol/EulerMMPayloadLib.dbg.json +4 -0
  29. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMMPayloadLib.sol/EulerMMPayloadLib.json +10 -0
  30. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarket.sol/EulerMoneyMarket.dbg.json +4 -0
  31. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarket.sol/EulerMoneyMarket.json +651 -0
  32. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarketView.sol/EulerMoneyMarketView.dbg.json +4 -0
  33. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarketView.sol/EulerMoneyMarketView.json +298 -0
  34. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEthereumVaultConnector.sol/IEVC.dbg.json +4 -0
  35. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEthereumVaultConnector.sol/IEVC.json +959 -0
  36. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerFactory.sol/IEulerFactory.dbg.json +4 -0
  37. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerFactory.sol/IEulerFactory.json +30 -0
  38. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerPriceOracle.sol/IEulerPriceOracle.dbg.json +4 -0
  39. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerPriceOracle.sol/IEulerPriceOracle.json +53 -0
  40. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol/AmountCapLib.dbg.json +4 -0
  41. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol/AmountCapLib.json +10 -0
  42. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol/IEulerVault.dbg.json +4 -0
  43. package/build/artifacts/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol/IEulerVault.json +933 -0
  44. package/build/artifacts/contracts/pt-looping/money-market/implementations/morpho/MorphoBlueMoneyMarket.sol/MorphoBlueMoneyMarket.dbg.json +1 -1
  45. package/build/artifacts/contracts/pt-looping/money-market/implementations/morpho/MorphoBlueMoneyMarket.sol/MorphoBlueMoneyMarket.json +2 -2
  46. package/build/artifacts/contracts/pt-looping/money-market/implementations/morpho/MorphoBlueMoneyMarketView.sol/MorphoBlueMoneyMarketView.dbg.json +1 -1
  47. package/build/artifacts/contracts/pt-looping/money-market/implementations/morpho/MorphoBlueMoneyMarketView.sol/MorphoBlueMoneyMarketView.json +2 -2
  48. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.dbg.json +1 -1
  49. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/OKXScaleHelper.dbg.json +1 -1
  50. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
  51. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +1 -1
  52. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  53. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -2
  54. package/contracts/interfaces/IPPTLooper.sol +2 -4
  55. package/contracts/pt-looping/PTLooperEIP712TypesEncodeDataLib.sol +6 -6
  56. package/contracts/pt-looping/PendlePTLooper.sol +4 -2
  57. package/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MMPayloadLib.sol +20 -0
  58. package/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarket.sol +85 -0
  59. package/contracts/pt-looping/money-market/implementations/aave-v4/AaveV4MoneyMarketView.sol +180 -0
  60. package/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IAaveOracle.sol +12 -0
  61. package/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/IHubBase.sol +72 -0
  62. package/contracts/pt-looping/money-market/implementations/aave-v4/dependencies/ISpoke.sol +88 -0
  63. package/contracts/pt-looping/money-market/implementations/euler/EulerMMPayloadLib.sol +25 -0
  64. package/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarket.sol +104 -0
  65. package/contracts/pt-looping/money-market/implementations/euler/EulerMoneyMarketView.sol +105 -0
  66. package/contracts/pt-looping/money-market/implementations/euler/dependencies/IEthereumVaultConnector.sol +432 -0
  67. package/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerFactory.sol +10 -0
  68. package/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerPriceOracle.sol +26 -0
  69. package/contracts/pt-looping/money-market/implementations/euler/dependencies/IEulerVault.sol +149 -0
  70. package/contracts/router/swap-aggregator/OKXScaleHelper.sol +6 -0
  71. package/deployments/1-offchain-helper.json +2 -1
  72. package/deployments/143-core.json +7 -1
  73. package/deployments/143-offchain-helper.json +2 -1
  74. package/deployments/196-core.json +49 -0
  75. package/deployments/196-offchain-helper.json +12 -0
  76. package/deployments/42161-core.json +4 -1
  77. package/deployments/42161-offchain-helper.json +2 -1
  78. package/deployments/4663-core.json +48 -0
  79. package/deployments/4663-offchain-helper.json +12 -0
  80. package/deployments/56-offchain-helper.json +2 -1
  81. package/deployments/8453-offchain-helper.json +2 -1
  82. package/deployments/9745-offchain-helper.json +2 -1
  83. package/deployments/999-offchain-helper.json +2 -1
  84. package/package.json +1 -1
  85. package/typechain-types/AaveV4MoneyMarket.ts +573 -0
  86. package/typechain-types/AaveV4MoneyMarketView.ts +362 -0
  87. package/typechain-types/EulerMoneyMarket.ts +599 -0
  88. package/typechain-types/EulerMoneyMarketView.ts +375 -0
  89. package/typechain-types/IAaveOracle.ts +17 -149
  90. package/typechain-types/IEVC.ts +1647 -0
  91. package/typechain-types/IEulerFactory.ts +94 -0
  92. package/typechain-types/IEulerPriceOracle.ts +123 -0
  93. package/typechain-types/IEulerVault.ts +1298 -0
  94. package/typechain-types/IHubBase.ts +452 -0
  95. package/typechain-types/IPPTLooper.ts +68 -68
  96. package/typechain-types/ISpoke.ts +577 -0
  97. package/typechain-types/PTLooperBase.ts +68 -68
  98. package/typechain-types/PendlePTLooper.ts +68 -68
  99. package/typechain-types/factories/AaveMoneyMarketView__factory.ts +1 -1
  100. package/typechain-types/factories/AaveMoneyMarket__factory.ts +1 -1
  101. package/typechain-types/factories/AaveV4MoneyMarketView__factory.ts +349 -0
  102. package/typechain-types/factories/AaveV4MoneyMarket__factory.ts +673 -0
  103. package/typechain-types/factories/EulerMoneyMarketView__factory.ts +371 -0
  104. package/typechain-types/factories/EulerMoneyMarket__factory.ts +720 -0
  105. package/typechain-types/factories/IAaveOracle__factory.ts +3 -93
  106. package/typechain-types/factories/IEVC__factory.ts +968 -0
  107. package/typechain-types/factories/IEulerFactory__factory.ts +42 -0
  108. package/typechain-types/factories/IEulerPriceOracle__factory.ts +68 -0
  109. package/typechain-types/factories/IEulerVault__factory.ts +945 -0
  110. package/typechain-types/factories/IHubBase__factory.ts +334 -0
  111. package/typechain-types/factories/IPPTLooper__factory.ts +243 -248
  112. package/typechain-types/factories/ISpoke__factory.ts +407 -0
  113. package/typechain-types/factories/MorphoBlueMoneyMarketView__factory.ts +1 -1
  114. package/typechain-types/factories/MorphoBlueMoneyMarket__factory.ts +1 -1
  115. package/typechain-types/factories/PTLooperBase__factory.ts +243 -248
  116. package/typechain-types/factories/PendlePTLooper__factory.ts +244 -249
  117. package/typechain-types/factories/PendleSwap__factory.ts +1 -1
  118. package/typechain-types/hardhat.d.ts +99 -45
  119. package/typechain-types/index.ts +22 -12
@@ -0,0 +1,349 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type {
7
+ AaveV4MoneyMarketView,
8
+ AaveV4MoneyMarketViewInterface,
9
+ } from "../AaveV4MoneyMarketView";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "string",
16
+ name: "_moneyMarketName",
17
+ type: "string",
18
+ },
19
+ {
20
+ internalType: "address",
21
+ name: "_ptLooper",
22
+ type: "address",
23
+ },
24
+ ],
25
+ stateMutability: "nonpayable",
26
+ type: "constructor",
27
+ },
28
+ {
29
+ inputs: [],
30
+ name: "POSITION_BOX_FACTORY",
31
+ outputs: [
32
+ {
33
+ internalType: "contract IPLoopPositionBoxFactory",
34
+ name: "",
35
+ type: "address",
36
+ },
37
+ ],
38
+ stateMutability: "view",
39
+ type: "function",
40
+ },
41
+ {
42
+ inputs: [],
43
+ name: "PT_LOOPER",
44
+ outputs: [
45
+ {
46
+ internalType: "contract IPPTLooper",
47
+ name: "",
48
+ type: "address",
49
+ },
50
+ ],
51
+ stateMutability: "view",
52
+ type: "function",
53
+ },
54
+ {
55
+ inputs: [
56
+ {
57
+ internalType: "contract IPLoopPositionBox",
58
+ name: "box",
59
+ type: "address",
60
+ },
61
+ ],
62
+ name: "limits",
63
+ outputs: [
64
+ {
65
+ components: [
66
+ {
67
+ internalType: "uint256",
68
+ name: "minBorrowing",
69
+ type: "uint256",
70
+ },
71
+ {
72
+ internalType: "uint256",
73
+ name: "maxBorrowing",
74
+ type: "uint256",
75
+ },
76
+ {
77
+ internalType: "uint256",
78
+ name: "minBorrowingForRewards",
79
+ type: "uint256",
80
+ },
81
+ {
82
+ internalType: "uint256",
83
+ name: "minLending",
84
+ type: "uint256",
85
+ },
86
+ {
87
+ internalType: "uint256",
88
+ name: "maxLending",
89
+ type: "uint256",
90
+ },
91
+ {
92
+ internalType: "uint256",
93
+ name: "minLendingForRewards",
94
+ type: "uint256",
95
+ },
96
+ ],
97
+ internalType: "struct Limits",
98
+ name: "limits_",
99
+ type: "tuple",
100
+ },
101
+ ],
102
+ stateMutability: "view",
103
+ type: "function",
104
+ },
105
+ {
106
+ inputs: [
107
+ {
108
+ internalType: "contract IPLoopPositionBox",
109
+ name: "box",
110
+ type: "address",
111
+ },
112
+ ],
113
+ name: "liquidity",
114
+ outputs: [
115
+ {
116
+ internalType: "uint256",
117
+ name: "borrowing",
118
+ type: "uint256",
119
+ },
120
+ {
121
+ internalType: "uint256",
122
+ name: "lending",
123
+ type: "uint256",
124
+ },
125
+ ],
126
+ stateMutability: "view",
127
+ type: "function",
128
+ },
129
+ {
130
+ inputs: [
131
+ {
132
+ internalType: "contract IPLoopPositionBox",
133
+ name: "box",
134
+ type: "address",
135
+ },
136
+ ],
137
+ name: "moneyMarketBalances",
138
+ outputs: [
139
+ {
140
+ internalType: "uint256",
141
+ name: "mmPtBalance",
142
+ type: "uint256",
143
+ },
144
+ {
145
+ internalType: "uint256",
146
+ name: "mmDebtBalance",
147
+ type: "uint256",
148
+ },
149
+ ],
150
+ stateMutability: "nonpayable",
151
+ type: "function",
152
+ },
153
+ {
154
+ inputs: [],
155
+ name: "moneyMarketName",
156
+ outputs: [
157
+ {
158
+ internalType: "string",
159
+ name: "",
160
+ type: "string",
161
+ },
162
+ ],
163
+ stateMutability: "view",
164
+ type: "function",
165
+ },
166
+ {
167
+ inputs: [
168
+ {
169
+ internalType: "contract IPLoopPositionBox",
170
+ name: "box",
171
+ type: "address",
172
+ },
173
+ ],
174
+ name: "ptDebtRate",
175
+ outputs: [
176
+ {
177
+ internalType: "uint256",
178
+ name: "",
179
+ type: "uint256",
180
+ },
181
+ ],
182
+ stateMutability: "view",
183
+ type: "function",
184
+ },
185
+ {
186
+ inputs: [
187
+ {
188
+ internalType: "contract IPLoopPositionBox",
189
+ name: "box",
190
+ type: "address",
191
+ },
192
+ ],
193
+ name: "rates",
194
+ outputs: [
195
+ {
196
+ internalType: "uint256",
197
+ name: "borrowing",
198
+ type: "uint256",
199
+ },
200
+ {
201
+ internalType: "uint256",
202
+ name: "lending",
203
+ type: "uint256",
204
+ },
205
+ ],
206
+ stateMutability: "view",
207
+ type: "function",
208
+ },
209
+ {
210
+ inputs: [
211
+ {
212
+ internalType: "contract IPLoopPositionBox",
213
+ name: "box",
214
+ type: "address",
215
+ },
216
+ ],
217
+ name: "rewards",
218
+ outputs: [
219
+ {
220
+ components: [
221
+ {
222
+ internalType: "address",
223
+ name: "token",
224
+ type: "address",
225
+ },
226
+ {
227
+ internalType: "uint256",
228
+ name: "claimable",
229
+ type: "uint256",
230
+ },
231
+ ],
232
+ internalType: "struct Reward[]",
233
+ name: "borrowing",
234
+ type: "tuple[]",
235
+ },
236
+ {
237
+ components: [
238
+ {
239
+ internalType: "address",
240
+ name: "token",
241
+ type: "address",
242
+ },
243
+ {
244
+ internalType: "uint256",
245
+ name: "claimable",
246
+ type: "uint256",
247
+ },
248
+ ],
249
+ internalType: "struct Reward[]",
250
+ name: "lending",
251
+ type: "tuple[]",
252
+ },
253
+ ],
254
+ stateMutability: "nonpayable",
255
+ type: "function",
256
+ },
257
+ {
258
+ inputs: [
259
+ {
260
+ internalType: "contract IPLoopPositionBox",
261
+ name: "box",
262
+ type: "address",
263
+ },
264
+ ],
265
+ name: "thresholds",
266
+ outputs: [
267
+ {
268
+ internalType: "uint256",
269
+ name: "ltv",
270
+ type: "uint256",
271
+ },
272
+ {
273
+ internalType: "uint256",
274
+ name: "liquidationThreshold",
275
+ type: "uint256",
276
+ },
277
+ ],
278
+ stateMutability: "view",
279
+ type: "function",
280
+ },
281
+ ];
282
+
283
+ const _bytecode =
284
+ "0x60c060405234801561000f575f5ffd5b50604051612ad0380380612ad083398101604081905261002e916100f9565b81815f61003b838261023e565b506001600160a01b03811660808190526040805163ca6f50fd60e01b8152905163ca6f50fd916004808201926020929091908290030181865afa158015610084573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100a891906102f8565b6001600160a01b031660a0525061031a92505050565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b03811681146100e6575f5ffd5b50565b80516100f4816100d2565b919050565b5f5f6040838503121561010a575f5ffd5b82516001600160401b0381111561011f575f5ffd5b8301601f8101851361012f575f5ffd5b80516001600160401b03811115610148576101486100be565b604051601f8201601f19908116603f011681016001600160401b0381118282101715610176576101766100be565b60405281815282820160200187101561018d575f5ffd5b8160208401602083015e5f602083830101528094505050506101b1602084016100e9565b90509250929050565b600181811c908216806101ce57607f821691505b6020821081036101ec57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561023957805f5260205f20601f840160051c810160208510156102175750805b601f840160051c820191505b81811015610236575f8155600101610223565b50505b505050565b81516001600160401b03811115610257576102576100be565b61026b8161026584546101ba565b846101f2565b6020601f82116001811461029d575f83156102865750848201515b5f19600385901b1c1916600184901b178455610236565b5f84815260208120601f198516915b828110156102cc57878501518255602094850194600190920191016102ac565b50848210156102e957868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f60208284031215610308575f5ffd5b8151610313816100d2565b9392505050565b60805160a05161278f6103415f395f81816101d4015261037b01525f60d3015261278f5ff3fe608060405234801561000f575f5ffd5b506004361061008b575f3560e01c8062ca69971461008f5780630700037d146100ad5780631a174fc4146100ce57806320d7bec11461010257806374eadf76146101605780639df5f6bd14610181578063a8734f0b146101a9578063b8c876b1146101bc578063ca6f50fd146101cf578063f59bbd5f146101f6575b5f5ffd5b610097610209565b6040516100a49190611e31565b60405180910390f35b6100c06100bb366004611e7d565b610294565b6040516100a4929190611ee7565b6100f57f000000000000000000000000000000000000000000000000000000000000000081565b6040516100a49190611f14565b610115610110366004611e7d565b6102b6565b6040516100a491905f60c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015292915050565b61017361016e366004611e7d565b6102d6565b6040519081526020016100a4565b61019461018f366004611e7d565b6102e9565b604080519283526020830191909152016100a4565b6101946101b7366004611e7d565b6102fd565b6101946101ca366004611e7d565b610311565b6100f57f000000000000000000000000000000000000000000000000000000000000000081565b610194610204366004611e7d565b610325565b5f805461021590611f28565b80601f016020809104026020016040519081016040528092919081815260200182805461024190611f28565b801561028c5780601f106102635761010080835404028352916020019161028c565b820191905f5260205f20905b81548152906001019060200180831161026f57829003601f168201915b505050505081565b6060806102ad836102a485610339565b50606091829150565b91509150915091565b6102be611e01565b6102d0826102cb84610339565b610466565b92915050565b5f6102d0826102e484610339565b61049a565b5f5f6102ad836102f885610339565b610575565b5f5f6102ad8361030c85610339565b61070b565b5f5f6102ad8361032085610339565b6108f2565b5f5f6102ad8361033485610339565b610dc7565b60408051610100810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166327409695836001600160a01b031663a817c1136040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103e4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104089190611f60565b6040518263ffffffff1660e01b815260040161042691815260200190565b61010060405180830381865afa158015610442573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102d0919061205b565b61046e611e01565b5f60a08201819052604082018190526060820181905281525f1960808201819052602082015292915050565b5f826001600160a01b031663746381a36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104d7573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fb91906120fc565b6001600160a01b0316639025036a6105138585610f20565b6040518263ffffffff1660e01b815260040161052f9190612117565b602060405180830381865afa15801561054a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061056e9190611f60565b9392505050565b5f5f5f5f6105868560e00151610f93565b5065ffffffffffff16915091505f826001600160a01b031663869da9db83896001600160a01b031663746381a36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e0573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061060491906120fc565b6040516001600160e01b031960e085901b16815260048101929092526001600160a01b0316602482015260440160a060405180830381865afa15801561064c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106709190612177565b6080015160405162ec17bb60e81b81526004810184905263ffffffff821660248201529091505f906001600160a01b0385169063ec17bb0090604401606060405180830381865afa1580156106c7573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106eb9190612221565b90506106fd815f015161ffff16610fa2565b988998509650505050505050565b5f5f5f5f5f61071d8660e00151610f93565b65ffffffffffff16925065ffffffffffff16925092505f836001600160a01b031663238b26d3896001600160a01b031663746381a36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561077f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a391906120fc565b6040518263ffffffff1660e01b81526004016107bf9190611f14565b602060405180830381865afa1580156107da573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107fe9190611f60565b6040516377778db360e01b815260048101849052909150610872906001600160a01b038616906377778db39060240160e060405180830381865afa158015610848573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086c91906122ba565b82610fb3565b6040516377778db360e01b8152600481018590529096506108e5906001600160a01b038616906377778db39060240160e060405180830381865afa1580156108bc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e091906122ba565b610fd7565b9450505050509250929050565b5f5f5f5f5f6109048660e00151610f93565b65ffffffffffff16925065ffffffffffff16925092505f836001600160a01b03166377778db3846040518263ffffffff1660e01b815260040161094991815260200190565b60e060405180830381865afa158015610964573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061098891906122ba565b90505f81602001516001600160a01b031663fce56a0b8360400151876040518363ffffffff1660e01b81526004016109c1929190612350565b61014060405180830381865afa1580156109dd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a0191906123a6565b905064ffffffffff8016816080015164ffffffffff1603610a8657815f01516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a5b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a7f9190611f60565b9550610b53565b5f8260600151600a610a989190612567565b826080015164ffffffffff16610aae9190612575565b90505f83602001516001600160a01b031663c04d164e856040015185606001516040518363ffffffff1660e01b8152600401610b0392919061ffff9290921682526001600160781b0316602082015260400190565b602060405180830381865afa158015610b1e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b429190611f60565b9050610b4e82826111d7565b975050505b50506040516377778db360e01b8152600481018290525f906001600160a01b038516906377778db39060240160e060405180830381865afa158015610b9a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bbe91906122ba565b6020810151604080830151905163fce56a0b60e01b815292935090915f916001600160a01b0384169163fce56a0b91610bfb918a90600401612350565b61014060405180830381865afa158015610c17573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c3b91906123a6565b90505f826001600160a01b031663eac8f5b885604001516040518263ffffffff1660e01b8152600401610c6e919061258c565b61022060405180830381865afa158015610c8a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cae91906125b1565b5f01516001600160781b0316905064ffffffffff80168260a0015164ffffffffff1603610cdd57809850610db9565b5f8460600151600a610cef9190612567565b8360a0015164ffffffffff16610d059190612575565b90505f610d1f8461012001516001600160c81b03166111ec565b60408088015190516303bf6e9f60e61b81526001600160a01b0388169163efdba7c091610d5191908e90600401612350565b602060405180830381865afa158015610d6c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d909190611f60565b610d9a9190612700565b90505f610da783836111d7565b9050610db38482611202565b9b505050505b505050505050509250929050565b5f5f5f846001600160a01b031663746381a36040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e06573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e2a91906120fc565b90505f610e378686610f20565b60405163180cad9960e01b81529091506001600160a01b0383169063180cad9990610e66908490600401612117565b6020604051808303815f875af1158015610e82573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ea69190611f60565b6040516313c9e73960e31b81529094506001600160a01b03831690639e4f39c890610ed5908490600401612117565b6020604051808303815f875af1158015610ef1573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f159190611f60565b925050509250929050565b604080516080810182525f8082526020820181905291810182905260608101919091526040518060800160405280846001600160a01b031681526020018360e00151815260200183608001516001600160a01b031681526020018360a001516001600160a01b0316815250905092915050565b606081901c91603082901c9190565b5f6102d082655af3107a4000612575565b5f61056e610fd2610fc384610fa2565b610fcc86611217565b90611293565b6112af565b5f5f82602001516001600160a01b031663eac8f5b884604001516040518263ffffffff1660e01b815260040161100d919061258c565b61022060405180830381865afa158015611029573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061104d91906125b1565b90505f83602001516001600160a01b03166324ba667f85604001516040518263ffffffff1660e01b8152600401611084919061258c565b602060405180830381865afa15801561109f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110c39190611f60565b9050805f036110d557505f9392505050565b5f8260e001516001600160781b03168360c001516001600160781b03166110fc9190612700565b60208601516040808801519051635e39616d60e01b815261ffff9091166004820152602481018390529192505f916001600160a01b0390911690635e39616d90604401602060405180830381865afa15801561115a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061117e9190611f60565b90505f61118a87611217565b90505f61119783866112be565b90505f6111bf6111af88610100015161ffff16610fa2565b6111b985856112ec565b90611309565b90506111ca816112af565b9998505050505050505050565b5f818310156111e6575f61056e565b50900390565b5f6102d0676765c793fa10079d601b1b83612727565b5f818310611210578161056e565b5090919050565b5f6102d082602001516001600160a01b0316638accc4a384604001516040518263ffffffff1660e01b815260040161124f919061258c565b602060405180830381865afa15801561126a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061128e9190611f60565b611320565b5f61056e836112aa84670de0b6b3a7640000612700565b6112ec565b5f6102d0826301e1338061132f565b5f806112d2670de0b6b3a764000085612575565b90508281816112e3576112e3612713565b04949350505050565b5f806112f88385612575565b9050670de0b6b3a7640000816112e3565b5f61056e836112aa84670de0b6b3a7640000612746565b5f6102d0633b9aca0083612727565b5f808261133f8562015180612575565b6113499190612727565b9050670de0b6b3a76400006113716813c9647e25a994000061136b8385612700565b90611383565b61137b9190612746565b949350505050565b5f815f0361139a5750670de0b6b3a76400006102d0565b825f036113a857505f6102d0565b600160ff1b83106113f25760405162461bcd60e51b815260206004820152600f60248201526e78206f7574206f6620626f756e647360881b60448201526064015b60405180910390fd5b82770bce5086492111aea88f4bb1ca6bcf584181ea8059f76532831061144c5760405162461bcd60e51b815260206004820152600f60248201526e79206f7574206f6620626f756e647360881b60448201526064016113e9565b825f670c7d713b49da00008313801561146c5750670f43fc2c04ee000083125b156114a2575f61147b84611535565b9050670de0b6b3a764000080820784020583670de0b6b3a7640000830502019150506114b0565b816114ac84611652565b0290505b670de0b6b3a76400009005680238fd42c5cf03ffff1981128015906114de575068070c1cc73b00c800008113155b6115225760405162461bcd60e51b815260206004820152601560248201527470726f64756374206f7574206f6620626f756e647360581b60448201526064016113e9565b61152b816119f0565b9695505050505050565b670de0b6b3a7640000025f806a0c097ce7bc90715b34b9f160241b808401906ec097ce7bc90715b34b9f0fffffffff198501028161157557611575612713565b0590505f6a0c097ce7bc90715b34b9f160241b82800205905081806a0c097ce7bc90715b34b9f160241b81840205915060038205016a0c097ce7bc90715b34b9f160241b82840205915060058205016a0c097ce7bc90715b34b9f160241b82840205915060078205016a0c097ce7bc90715b34b9f160241b82840205915060098205016a0c097ce7bc90715b34b9f160241b828402059150600b8205016a0c097ce7bc90715b34b9f160241b828402059150600d8205016a0c097ce7bc90715b34b9f160241b828402059150600f82050160020295945050505050565b5f670de0b6b3a764000082121561169157611689826a0c097ce7bc90715b34b9f160241b8161168357611683612713565b05611652565b5f0392915050565b5f775803bcc5cb9634ba4cfb2213f784019318ed4dcb6017880f60361b83126116db5772195e54c5dd42177f53a27172fa9ec63026282760241b830592506806f05b59d3b2000000015b6f8bcc0026baae9e45e470190267a230cf60191b8312611712576b1425982cf597cd205cef7380830592506803782dace9d9000000015b606492830292026e01855144814a7ff805980ff0084000831261175a576e01855144814a7ff805980ff008400068056bc75e2d63100000840205925068ad78ebc5ac62000000015b6b02df0ab5a80a22c61ab5a7008312611795576b02df0ab5a80a22c61ab5a70068056bc75e2d6310000084020592506856bc75e2d631000000015b693f1fce3da636ea5cf85083126117cc57693f1fce3da636ea5cf85068056bc75e2d631000008402059250682b5e3af16b18800000015b690127fa27722cc06cc5e2831261180357690127fa27722cc06cc5e268056bc75e2d6310000084020592506815af1d78b58c400000015b68280e60114edb805d0383126118385768280e60114edb805d0368056bc75e2d631000008402059250680ad78ebc5ac6200000015b680ebc5fb41746121110831261186357680ebc5fb4174612111068056bc75e2d631000009384020592015b6808f00f760a4b2db55d8312611898576808f00f760a4b2db55d68056bc75e2d6310000084020592506802b5e3af16b1880000015b6806f5f177578893793783126118cd576806f5f177578893793768056bc75e2d63100000840205925068015af1d78b58c40000015b6806248f33704b2866038312611901576806248f33704b28660368056bc75e2d63100000840205925067ad78ebc5ac620000015b6805c548670b9510e7ac8312611935576805c548670b9510e7ac68056bc75e2d6310000084020592506756bc75e2d6310000015b5f68056bc75e2d63100000840168056bc75e2d63100000808603028161195d5761195d612713565b0590505f68056bc75e2d63100000828002059050818068056bc75e2d63100000818402059150600382050168056bc75e2d63100000828402059150600582050168056bc75e2d63100000828402059150600782050168056bc75e2d63100000828402059150600982050168056bc75e2d63100000828402059150600b820501600202606485820105979650505050505050565b5f680238fd42c5cf03ffff198212158015611a14575068070c1cc73b00c800008213155b611a535760405162461bcd60e51b815260206004820152601060248201526f125b9d985b1a5908195e1c1bdb995b9d60821b60448201526064016113e9565b5f821215611a8957611a66825f036119f0565b6a0c097ce7bc90715b34b9f160241b81611a8257611a82612713565b0592915050565b5f6806f05b59d3b20000008312611ac657506806f05b59d3b1ffffff199091019072195e54c5dd42177f53a27172fa9ec63026282760241b611afc565b6803782dace9d90000008312611af857506803782dace9d8ffffff19909101906b1425982cf597cd205cef7380611afc565b5060015b6064929092029168056bc75e2d6310000068ad78ebc5ac620000008412611b4c5768ad78ebc5ac61ffffff199093019268056bc75e2d631000006e01855144814a7ff805980ff008400082020590505b6856bc75e2d6310000008412611b88576856bc75e2d630ffffff199093019268056bc75e2d631000006b02df0ab5a80a22c61ab5a70082020590505b682b5e3af16b188000008412611bc257682b5e3af16b187fffff199093019268056bc75e2d63100000693f1fce3da636ea5cf85082020590505b6815af1d78b58c4000008412611bfc576815af1d78b58c3fffff199093019268056bc75e2d63100000690127fa27722cc06cc5e282020590505b680ad78ebc5ac62000008412611c3557680ad78ebc5ac61fffff199093019268056bc75e2d6310000068280e60114edb805d0382020590505b68056bc75e2d631000008412611c6e5768056bc75e2d630fffff199093019268056bc75e2d63100000680ebc5fb4174612111082020590505b6802b5e3af16b18800008412611ca7576802b5e3af16b187ffff199093019268056bc75e2d631000006808f00f760a4b2db55d82020590505b68015af1d78b58c400008412611ce05768015af1d78b58c3ffff199093019268056bc75e2d631000006806f5f177578893793782020590505b68056bc75e2d631000008481019085906002908280020505918201919050600368056bc75e2d631000008783020505918201919050600468056bc75e2d631000008783020505918201919050600568056bc75e2d631000008783020505918201919050600668056bc75e2d631000008783020505918201919050600768056bc75e2d631000008783020505918201919050600868056bc75e2d631000008783020505918201919050600968056bc75e2d631000008783020505918201919050600a68056bc75e2d631000008783020505918201919050600b68056bc75e2d631000008783020505918201919050600c68056bc75e2d631000008783020505918201919050606468056bc75e2d63100000848402058502059695505050505050565b6040518060c001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114611e7a575f5ffd5b50565b5f60208284031215611e8d575f5ffd5b813561056e81611e66565b5f8151808452602084019350602083015f5b82811015611edd57815180516001600160a01b031687526020908101518188015260409096019590910190600101611eaa565b5093949350505050565b604081525f611ef96040830185611e98565b8281036020840152611f0b8185611e98565b95945050505050565b6001600160a01b0391909116815260200190565b600181811c90821680611f3c57607f821691505b602082108103611f5a57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215611f70575f5ffd5b5051919050565b60405161010081016001600160401b0381118282101715611fa657634e487b7160e01b5f52604160045260245ffd5b60405290565b60405160e081016001600160401b0381118282101715611fa657634e487b7160e01b5f52604160045260245ffd5b60405161014081016001600160401b0381118282101715611fa657634e487b7160e01b5f52604160045260245ffd5b60405161022081016001600160401b0381118282101715611fa657634e487b7160e01b5f52604160045260245ffd5b805163ffffffff8116811461204b575f5ffd5b919050565b805161204b81611e66565b5f61010082840312801561206d575f5ffd5b50612076611f77565b61207f83612038565b815261208d60208401612038565b602082015260408301516120a081611e66565b60408201526120b160608401612050565b60608201526120c260808401612050565b60808201526120d360a08401612050565b60a08201526120e460c08401612050565b60c082015260e0928301519281019290925250919050565b5f6020828403121561210c575f5ffd5b815161056e81611e66565b81516001600160a01b03908116825260208084015190830152604080840151821690830152606092830151169181019190915260800190565b80516001600160781b038116811461204b575f5ffd5b8051601881900b811461204b575f5ffd5b5f60a0828403128015612188575f5ffd5b5060405160a081016001600160401b03811182821017156121b757634e487b7160e01b5f52604160045260245ffd5b6040526121c383612150565b81526121d160208401612150565b60208201526121e260408401612166565b60408201526121f360608401612150565b606082015261220460808401612038565b60808201529392505050565b805161ffff8116811461204b575f5ffd5b5f6060828403128015612232575f5ffd5b50604051606081016001600160401b038111828210171561226157634e487b7160e01b5f52604160045260245ffd5b60405261226d83612210565b815261227b60208401612038565b602082015261228c60408401612210565b60408201529392505050565b805160ff8116811461204b575f5ffd5b805162ffffff8116811461204b575f5ffd5b5f60e08284031280156122cb575f5ffd5b506122d4611fac565b82516122df81611e66565b815260208301516122ef81611e66565b602082015261230060408401612210565b604082015261231160608401612298565b6060820152612322608084016122a8565b608082015261233360a08401612298565b60a082015261234460c08401612038565b60c08201529392505050565b61ffff9290921682526001600160a01b0316602082015260400190565b805164ffffffffff8116811461204b575f5ffd5b8051801515811461204b575f5ffd5b80516001600160c81b038116811461204b575f5ffd5b5f6101408284031280156123b8575f5ffd5b506123c1611fda565b6123ca83612150565b81526123d860208401612150565b60208201526123e960408401612166565b60408201526123fa60608401612150565b606082015261240b6080840161236d565b608082015261241c60a0840161236d565b60a082015261242d60c084016122a8565b60c082015261243e60e08401612381565b60e08201526124506101008401612381565b6101008201526124636101208401612390565b6101208201529392505050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156124bf578085048111156124a3576124a3612470565b60018416156124b157908102905b60019390931c928002612488565b935093915050565b5f826124d5575060016102d0565b816124e157505f6102d0565b81600181146124f757600281146125015761251d565b60019150506102d0565b60ff84111561251257612512612470565b50506001821b6102d0565b5060208310610133831016604e8410600b8410161715612540575081810a6102d0565b61254c5f198484612484565b805f190482111561255f5761255f612470565b029392505050565b5f61056e60ff8416836124c7565b80820281158282048414176102d0576102d0612470565b61ffff91909116815260200190565b80516001600160601b038116811461204b575f5ffd5b5f6102208284031280156125c3575f5ffd5b506125cc612009565b6125d583612150565b81526125e360208401612150565b60208201526125f460408401612298565b604082015261260560608401612150565b606082015261261660808401612150565b608082015261262760a08401612166565b60a082015261263860c08401612150565b60c082015261264960e08401612150565b60e082015261265b6101008401612210565b61010082015261266e6101208401612150565b610120820152612681610140840161259b565b610140820152612694610160840161236d565b6101608201526126a76101808401612050565b6101808201526126ba6101a08401612050565b6101a08201526126cd6101c08401612050565b6101c08201526126e06101e08401612050565b6101e08201526126f36102008401612390565b6102008201529392505050565b808201808211156102d0576102d0612470565b634e487b7160e01b5f52601260045260245ffd5b5f8261274157634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156102d0576102d061247056fea2646970667358221220a54ee5f11537da1c2a494d5a34bad0499fa6799023ed360104ef32635c41e7e564736f6c634300081e0033";
285
+
286
+ type AaveV4MoneyMarketViewConstructorParams =
287
+ | [signer?: Signer]
288
+ | ConstructorParameters<typeof ContractFactory>;
289
+
290
+ const isSuperArgs = (
291
+ xs: AaveV4MoneyMarketViewConstructorParams
292
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
293
+
294
+ export class AaveV4MoneyMarketView__factory extends ContractFactory {
295
+ constructor(...args: AaveV4MoneyMarketViewConstructorParams) {
296
+ if (isSuperArgs(args)) {
297
+ super(...args);
298
+ } else {
299
+ super(_abi, _bytecode, args[0]);
300
+ }
301
+ this.contractName = "AaveV4MoneyMarketView";
302
+ }
303
+
304
+ deploy(
305
+ _moneyMarketName: string,
306
+ _ptLooper: string,
307
+ overrides?: Overrides & { from?: string | Promise<string> }
308
+ ): Promise<AaveV4MoneyMarketView> {
309
+ return super.deploy(
310
+ _moneyMarketName,
311
+ _ptLooper,
312
+ overrides || {}
313
+ ) as Promise<AaveV4MoneyMarketView>;
314
+ }
315
+ getDeployTransaction(
316
+ _moneyMarketName: string,
317
+ _ptLooper: string,
318
+ overrides?: Overrides & { from?: string | Promise<string> }
319
+ ): TransactionRequest {
320
+ return super.getDeployTransaction(
321
+ _moneyMarketName,
322
+ _ptLooper,
323
+ overrides || {}
324
+ );
325
+ }
326
+ attach(address: string): AaveV4MoneyMarketView {
327
+ return super.attach(address) as AaveV4MoneyMarketView;
328
+ }
329
+ connect(signer: Signer): AaveV4MoneyMarketView__factory {
330
+ return super.connect(signer) as AaveV4MoneyMarketView__factory;
331
+ }
332
+ static readonly contractName: "AaveV4MoneyMarketView";
333
+ public readonly contractName: "AaveV4MoneyMarketView";
334
+ static readonly bytecode = _bytecode;
335
+ static readonly abi = _abi;
336
+ static createInterface(): AaveV4MoneyMarketViewInterface {
337
+ return new utils.Interface(_abi) as AaveV4MoneyMarketViewInterface;
338
+ }
339
+ static connect(
340
+ address: string,
341
+ signerOrProvider: Signer | Provider
342
+ ): AaveV4MoneyMarketView {
343
+ return new Contract(
344
+ address,
345
+ _abi,
346
+ signerOrProvider
347
+ ) as AaveV4MoneyMarketView;
348
+ }
349
+ }