@pendle/core-v2 6.1.2 → 6.1.3-sweed

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 (118) hide show
  1. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerBaseUpg.sol/PendleGaugeControllerBaseUpg.dbg.json +1 -1
  2. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerMainchainUpg.sol/PendleGaugeControllerMainchainUpg.dbg.json +1 -1
  3. package/build/artifacts/contracts/LiquidityMining/GaugeController/PendleGaugeControllerSidechainUpg.sol/PendleGaugeControllerSidechainUpg.dbg.json +1 -1
  4. package/build/artifacts/contracts/core/Market/MarketMathCore.sol/MarketMathCore.dbg.json +1 -1
  5. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  6. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.dbg.json +1 -1
  7. package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.dbg.json +1 -1
  8. package/build/artifacts/contracts/core/StandardizedYield/PYIndex.sol/PYIndexLib.dbg.json +1 -1
  9. package/build/artifacts/contracts/core/YieldContracts/InterestManagerYT.sol/InterestManagerYT.dbg.json +1 -1
  10. package/build/artifacts/contracts/core/YieldContracts/PendlePrincipalToken.sol/PendlePrincipalToken.dbg.json +1 -1
  11. package/build/artifacts/contracts/core/YieldContracts/PendleYieldContractFactory.sol/PendleYieldContractFactory.dbg.json +1 -1
  12. package/build/artifacts/contracts/core/YieldContracts/PendleYieldToken.sol/PendleYieldToken.dbg.json +1 -1
  13. package/build/artifacts/contracts/core/erc20/PendleERC20.sol/PendleERC20.dbg.json +1 -1
  14. package/build/artifacts/contracts/core/erc20/PendleERC20Permit.sol/PendleERC20Permit.dbg.json +1 -1
  15. package/build/artifacts/contracts/interfaces/IMarketSweed.sol/IMarketSweed.dbg.json +4 -0
  16. package/build/artifacts/contracts/interfaces/IMarketSweed.sol/IMarketSweed.json +141 -0
  17. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
  18. package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.dbg.json +1 -1
  19. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  20. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  21. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  22. package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
  23. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  24. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
  25. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
  26. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
  27. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  28. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
  29. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
  30. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
  31. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
  32. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
  33. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +1 -1
  34. package/build/artifacts/contracts/interfaces/IPCommonPoolDeployHelperV2.sol/IPCommonPoolDeployHelperV2.dbg.json +1 -1
  35. package/build/artifacts/contracts/interfaces/IPCommonPoolDeployHelperV2.sol/IPCommonPoolDeployHelperV2.json +93 -0
  36. package/build/artifacts/contracts/interfaces/IPGauge.sol/IPGauge.dbg.json +1 -1
  37. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitOrderType.dbg.json +1 -1
  38. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.dbg.json +1 -1
  39. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.dbg.json +1 -1
  40. package/build/artifacts/contracts/interfaces/IPMarket.sol/IPMarket.dbg.json +1 -1
  41. package/build/artifacts/contracts/interfaces/IPMarketFactory.sol/IPMarketFactory.dbg.json +1 -1
  42. package/build/artifacts/contracts/interfaces/IPMarketFactoryV3.sol/IPMarketFactoryV3.dbg.json +1 -1
  43. package/build/artifacts/contracts/interfaces/IPMarketV3.sol/IPMarketV3.dbg.json +1 -1
  44. package/build/artifacts/contracts/interfaces/IPPYLpOracle.sol/IPPYLpOracle.dbg.json +1 -1
  45. package/build/artifacts/contracts/interfaces/IPPrincipalToken.sol/IPPrincipalToken.dbg.json +1 -1
  46. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  47. package/build/artifacts/contracts/interfaces/IPYieldContractFactory.sol/IPYieldContractFactory.dbg.json +1 -1
  48. package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.dbg.json +1 -1
  49. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
  50. package/build/artifacts/contracts/offchain-helpers/BalanceReader.sol/BalanceReader.dbg.json +1 -1
  51. package/build/artifacts/contracts/offchain-helpers/ExpiredLpPtRedeemer.sol/ExpiredLpPtRedeemer.dbg.json +1 -1
  52. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelperV2.sol/LimitBackendHelperV2.dbg.json +1 -1
  53. package/build/artifacts/contracts/offchain-helpers/MarketSweed.sol/MarketSweed.dbg.json +4 -0
  54. package/build/artifacts/contracts/offchain-helpers/MarketSweed.sol/MarketSweed.json +338 -0
  55. package/build/artifacts/contracts/offchain-helpers/PendleLPWrapper.sol/PendleLPWrapper.dbg.json +1 -1
  56. package/build/artifacts/contracts/offchain-helpers/PendleLPWrapperFactory.sol/PendleLPWrapperFactory.dbg.json +1 -1
  57. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.dbg.json +1 -1
  58. package/build/artifacts/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol/PendleCommonPoolDeployHelperV2.json +108 -2
  59. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
  60. package/build/artifacts/contracts/offchain-helpers/deploy/PendlePoolDeployHelperV2.sol/PendlePoolDeployHelperV2.dbg.json +1 -1
  61. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  62. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  63. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  64. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  65. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  66. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  67. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  68. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.dbg.json +1 -1
  69. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.dbg.json +1 -1
  70. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  71. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  72. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +1 -1
  73. package/build/artifacts/contracts/oracles/PtYtLpOracle/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +1 -1
  74. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracle.sol/PendleChainlinkOracle.dbg.json +1 -1
  75. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleFactory.sol/PendleChainlinkOracleFactory.dbg.json +1 -1
  76. package/build/artifacts/contracts/oracles/PtYtLpOracle/chainlink/PendleChainlinkOracleWithQuote.sol/PendleChainlinkOracleWithQuote.dbg.json +1 -1
  77. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringLpSeller.sol/BoringLpSeller.dbg.json +1 -1
  78. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +1 -1
  79. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +1 -1
  80. package/build/artifacts/contracts/oracles/PtYtLpOracle/samples/BoringPtSeller.sol/BoringPtSeller.dbg.json +1 -1
  81. package/build/artifacts/contracts/oracles/internal/PendleSparkLinearDiscountOracleFactory.sol/PendleSparkLinearDiscountOracleFactory.dbg.json +1 -1
  82. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
  83. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
  84. package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
  85. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  86. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +1 -1
  87. package/build/artifacts/contracts/router/base/CallbackHelper.sol/CallbackHelper.dbg.json +1 -1
  88. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
  89. package/build/artifacts/contracts/router/math/MarketApproxEstimateLib.sol/MarketApproxEstimateLib.dbg.json +1 -1
  90. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
  91. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
  92. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.dbg.json +1 -1
  93. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.dbg.json +1 -1
  94. package/contracts/interfaces/IMarketSweed.sol +23 -0
  95. package/contracts/interfaces/IPCommonPoolDeployHelperV2.sol +9 -0
  96. package/contracts/offchain-helpers/MarketSweed.sol +239 -0
  97. package/contracts/offchain-helpers/deploy/PendleCommonPoolDeployHelperV2.sol +21 -7
  98. package/package.json +1 -1
  99. package/typechain-types/IPCommonPoolDeployHelperV2.ts +66 -0
  100. package/typechain-types/IPReentrancyGuardUpg.ts +89 -0
  101. package/typechain-types/MarketSweed.ts +39 -0
  102. package/typechain-types/PendleCommonPoolDeployHelperV2.ts +87 -0
  103. package/typechain-types/PendleERC20Upg.ts +21 -0
  104. package/typechain-types/PendleMarket.ts +82 -32
  105. package/typechain-types/PendleMarketFactoryUpg.ts +773 -0
  106. package/typechain-types/PendleMarketFactoryV3Upg.ts +760 -0
  107. package/typechain-types/PendleReentrancyGuardUpg.ts +100 -0
  108. package/typechain-types/PendleYieldContractFactoryUpg.ts +820 -0
  109. package/typechain-types/factories/IPCommonPoolDeployHelperV2__factory.ts +93 -0
  110. package/typechain-types/factories/IPReentrancyGuardUpg__factory.ts +43 -0
  111. package/typechain-types/factories/MarketSweed__factory.ts +74 -1
  112. package/typechain-types/factories/PendleCommonPoolDeployHelperV2__factory.ts +107 -1
  113. package/typechain-types/factories/PendleERC20Upg__factory.ts +13 -0
  114. package/typechain-types/factories/PendleMarketFactoryUpg__factory.ts +732 -0
  115. package/typechain-types/factories/PendleMarketFactoryV3Upg__factory.ts +719 -0
  116. package/typechain-types/factories/PendleMarket__factory.ts +81 -27
  117. package/typechain-types/factories/PendleReentrancyGuardUpg__factory.ts +56 -0
  118. package/typechain-types/factories/PendleYieldContractFactoryUpg__factory.ts +692 -0
@@ -0,0 +1,692 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ Signer,
6
+ utils,
7
+ Contract,
8
+ ContractFactory,
9
+ Overrides,
10
+ BigNumberish,
11
+ } from "ethers";
12
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
13
+ import type {
14
+ PendleYieldContractFactoryUpg,
15
+ PendleYieldContractFactoryUpgInterface,
16
+ } from "../PendleYieldContractFactoryUpg";
17
+
18
+ const _abi = [
19
+ {
20
+ inputs: [
21
+ {
22
+ internalType: "address",
23
+ name: "_ytCreationCodeContractA",
24
+ type: "address",
25
+ },
26
+ {
27
+ internalType: "uint256",
28
+ name: "_ytCreationCodeSizeA",
29
+ type: "uint256",
30
+ },
31
+ {
32
+ internalType: "address",
33
+ name: "_ytCreationCodeContractB",
34
+ type: "address",
35
+ },
36
+ {
37
+ internalType: "uint256",
38
+ name: "_ytCreationCodeSizeB",
39
+ type: "uint256",
40
+ },
41
+ ],
42
+ stateMutability: "nonpayable",
43
+ type: "constructor",
44
+ },
45
+ {
46
+ inputs: [
47
+ {
48
+ internalType: "uint256",
49
+ name: "interestFeeRate",
50
+ type: "uint256",
51
+ },
52
+ {
53
+ internalType: "uint256",
54
+ name: "maxInterestFeeRate",
55
+ type: "uint256",
56
+ },
57
+ ],
58
+ name: "YCFactoryInterestFeeRateTooHigh",
59
+ type: "error",
60
+ },
61
+ {
62
+ inputs: [],
63
+ name: "YCFactoryInvalidExpiry",
64
+ type: "error",
65
+ },
66
+ {
67
+ inputs: [
68
+ {
69
+ internalType: "uint256",
70
+ name: "newRewardFeeRate",
71
+ type: "uint256",
72
+ },
73
+ {
74
+ internalType: "uint256",
75
+ name: "maxRewardFeeRate",
76
+ type: "uint256",
77
+ },
78
+ ],
79
+ name: "YCFactoryRewardFeeRateTooHigh",
80
+ type: "error",
81
+ },
82
+ {
83
+ inputs: [],
84
+ name: "YCFactoryYieldContractExisted",
85
+ type: "error",
86
+ },
87
+ {
88
+ inputs: [],
89
+ name: "YCFactoryZeroExpiryDivisor",
90
+ type: "error",
91
+ },
92
+ {
93
+ inputs: [],
94
+ name: "YCFactoryZeroTreasury",
95
+ type: "error",
96
+ },
97
+ {
98
+ anonymous: false,
99
+ inputs: [
100
+ {
101
+ indexed: true,
102
+ internalType: "address",
103
+ name: "SY",
104
+ type: "address",
105
+ },
106
+ {
107
+ indexed: true,
108
+ internalType: "uint256",
109
+ name: "expiry",
110
+ type: "uint256",
111
+ },
112
+ {
113
+ indexed: false,
114
+ internalType: "address",
115
+ name: "PT",
116
+ type: "address",
117
+ },
118
+ {
119
+ indexed: false,
120
+ internalType: "address",
121
+ name: "YT",
122
+ type: "address",
123
+ },
124
+ ],
125
+ name: "CreateYieldContract",
126
+ type: "event",
127
+ },
128
+ {
129
+ anonymous: false,
130
+ inputs: [
131
+ {
132
+ indexed: false,
133
+ internalType: "uint8",
134
+ name: "version",
135
+ type: "uint8",
136
+ },
137
+ ],
138
+ name: "Initialized",
139
+ type: "event",
140
+ },
141
+ {
142
+ anonymous: false,
143
+ inputs: [
144
+ {
145
+ indexed: true,
146
+ internalType: "address",
147
+ name: "previousOwner",
148
+ type: "address",
149
+ },
150
+ {
151
+ indexed: true,
152
+ internalType: "address",
153
+ name: "newOwner",
154
+ type: "address",
155
+ },
156
+ ],
157
+ name: "OwnershipTransferred",
158
+ type: "event",
159
+ },
160
+ {
161
+ anonymous: false,
162
+ inputs: [
163
+ {
164
+ indexed: false,
165
+ internalType: "uint256",
166
+ name: "newExpiryDivisor",
167
+ type: "uint256",
168
+ },
169
+ ],
170
+ name: "SetExpiryDivisor",
171
+ type: "event",
172
+ },
173
+ {
174
+ anonymous: false,
175
+ inputs: [
176
+ {
177
+ indexed: false,
178
+ internalType: "uint256",
179
+ name: "newInterestFeeRate",
180
+ type: "uint256",
181
+ },
182
+ ],
183
+ name: "SetInterestFeeRate",
184
+ type: "event",
185
+ },
186
+ {
187
+ anonymous: false,
188
+ inputs: [
189
+ {
190
+ indexed: false,
191
+ internalType: "uint256",
192
+ name: "newRewardFeeRate",
193
+ type: "uint256",
194
+ },
195
+ ],
196
+ name: "SetRewardFeeRate",
197
+ type: "event",
198
+ },
199
+ {
200
+ anonymous: false,
201
+ inputs: [
202
+ {
203
+ indexed: true,
204
+ internalType: "address",
205
+ name: "treasury",
206
+ type: "address",
207
+ },
208
+ ],
209
+ name: "SetTreasury",
210
+ type: "event",
211
+ },
212
+ {
213
+ inputs: [],
214
+ name: "VERSION",
215
+ outputs: [
216
+ {
217
+ internalType: "string",
218
+ name: "",
219
+ type: "string",
220
+ },
221
+ ],
222
+ stateMutability: "view",
223
+ type: "function",
224
+ },
225
+ {
226
+ inputs: [],
227
+ name: "claimOwnership",
228
+ outputs: [],
229
+ stateMutability: "nonpayable",
230
+ type: "function",
231
+ },
232
+ {
233
+ inputs: [
234
+ {
235
+ internalType: "address",
236
+ name: "SY",
237
+ type: "address",
238
+ },
239
+ {
240
+ internalType: "uint32",
241
+ name: "expiry",
242
+ type: "uint32",
243
+ },
244
+ {
245
+ internalType: "bool",
246
+ name: "doCacheIndexSameBlock",
247
+ type: "bool",
248
+ },
249
+ ],
250
+ name: "createYieldContract",
251
+ outputs: [
252
+ {
253
+ internalType: "address",
254
+ name: "PT",
255
+ type: "address",
256
+ },
257
+ {
258
+ internalType: "address",
259
+ name: "YT",
260
+ type: "address",
261
+ },
262
+ ],
263
+ stateMutability: "nonpayable",
264
+ type: "function",
265
+ },
266
+ {
267
+ inputs: [],
268
+ name: "expiryDivisor",
269
+ outputs: [
270
+ {
271
+ internalType: "uint96",
272
+ name: "",
273
+ type: "uint96",
274
+ },
275
+ ],
276
+ stateMutability: "view",
277
+ type: "function",
278
+ },
279
+ {
280
+ inputs: [
281
+ {
282
+ internalType: "address",
283
+ name: "",
284
+ type: "address",
285
+ },
286
+ {
287
+ internalType: "uint256",
288
+ name: "",
289
+ type: "uint256",
290
+ },
291
+ ],
292
+ name: "getPT",
293
+ outputs: [
294
+ {
295
+ internalType: "address",
296
+ name: "",
297
+ type: "address",
298
+ },
299
+ ],
300
+ stateMutability: "view",
301
+ type: "function",
302
+ },
303
+ {
304
+ inputs: [
305
+ {
306
+ internalType: "address",
307
+ name: "",
308
+ type: "address",
309
+ },
310
+ {
311
+ internalType: "uint256",
312
+ name: "",
313
+ type: "uint256",
314
+ },
315
+ ],
316
+ name: "getYT",
317
+ outputs: [
318
+ {
319
+ internalType: "address",
320
+ name: "",
321
+ type: "address",
322
+ },
323
+ ],
324
+ stateMutability: "view",
325
+ type: "function",
326
+ },
327
+ {
328
+ inputs: [
329
+ {
330
+ internalType: "uint96",
331
+ name: "_expiryDivisor",
332
+ type: "uint96",
333
+ },
334
+ {
335
+ internalType: "uint128",
336
+ name: "_interestFeeRate",
337
+ type: "uint128",
338
+ },
339
+ {
340
+ internalType: "uint128",
341
+ name: "_rewardFeeRate",
342
+ type: "uint128",
343
+ },
344
+ {
345
+ internalType: "address",
346
+ name: "_treasury",
347
+ type: "address",
348
+ },
349
+ {
350
+ internalType: "address",
351
+ name: "_owner",
352
+ type: "address",
353
+ },
354
+ ],
355
+ name: "initialize",
356
+ outputs: [],
357
+ stateMutability: "nonpayable",
358
+ type: "function",
359
+ },
360
+ {
361
+ inputs: [],
362
+ name: "interestFeeRate",
363
+ outputs: [
364
+ {
365
+ internalType: "uint128",
366
+ name: "",
367
+ type: "uint128",
368
+ },
369
+ ],
370
+ stateMutability: "view",
371
+ type: "function",
372
+ },
373
+ {
374
+ inputs: [
375
+ {
376
+ internalType: "address",
377
+ name: "",
378
+ type: "address",
379
+ },
380
+ ],
381
+ name: "isPT",
382
+ outputs: [
383
+ {
384
+ internalType: "bool",
385
+ name: "",
386
+ type: "bool",
387
+ },
388
+ ],
389
+ stateMutability: "view",
390
+ type: "function",
391
+ },
392
+ {
393
+ inputs: [
394
+ {
395
+ internalType: "address",
396
+ name: "",
397
+ type: "address",
398
+ },
399
+ ],
400
+ name: "isYT",
401
+ outputs: [
402
+ {
403
+ internalType: "bool",
404
+ name: "",
405
+ type: "bool",
406
+ },
407
+ ],
408
+ stateMutability: "view",
409
+ type: "function",
410
+ },
411
+ {
412
+ inputs: [],
413
+ name: "maxInterestFeeRate",
414
+ outputs: [
415
+ {
416
+ internalType: "uint256",
417
+ name: "",
418
+ type: "uint256",
419
+ },
420
+ ],
421
+ stateMutability: "view",
422
+ type: "function",
423
+ },
424
+ {
425
+ inputs: [],
426
+ name: "maxRewardFeeRate",
427
+ outputs: [
428
+ {
429
+ internalType: "uint256",
430
+ name: "",
431
+ type: "uint256",
432
+ },
433
+ ],
434
+ stateMutability: "view",
435
+ type: "function",
436
+ },
437
+ {
438
+ inputs: [],
439
+ name: "owner",
440
+ outputs: [
441
+ {
442
+ internalType: "address",
443
+ name: "",
444
+ type: "address",
445
+ },
446
+ ],
447
+ stateMutability: "view",
448
+ type: "function",
449
+ },
450
+ {
451
+ inputs: [],
452
+ name: "pendingOwner",
453
+ outputs: [
454
+ {
455
+ internalType: "address",
456
+ name: "",
457
+ type: "address",
458
+ },
459
+ ],
460
+ stateMutability: "view",
461
+ type: "function",
462
+ },
463
+ {
464
+ inputs: [],
465
+ name: "rewardFeeRate",
466
+ outputs: [
467
+ {
468
+ internalType: "uint128",
469
+ name: "",
470
+ type: "uint128",
471
+ },
472
+ ],
473
+ stateMutability: "view",
474
+ type: "function",
475
+ },
476
+ {
477
+ inputs: [
478
+ {
479
+ internalType: "uint96",
480
+ name: "newExpiryDivisor",
481
+ type: "uint96",
482
+ },
483
+ ],
484
+ name: "setExpiryDivisor",
485
+ outputs: [],
486
+ stateMutability: "nonpayable",
487
+ type: "function",
488
+ },
489
+ {
490
+ inputs: [
491
+ {
492
+ internalType: "uint128",
493
+ name: "newInterestFeeRate",
494
+ type: "uint128",
495
+ },
496
+ ],
497
+ name: "setInterestFeeRate",
498
+ outputs: [],
499
+ stateMutability: "nonpayable",
500
+ type: "function",
501
+ },
502
+ {
503
+ inputs: [
504
+ {
505
+ internalType: "uint128",
506
+ name: "newRewardFeeRate",
507
+ type: "uint128",
508
+ },
509
+ ],
510
+ name: "setRewardFeeRate",
511
+ outputs: [],
512
+ stateMutability: "nonpayable",
513
+ type: "function",
514
+ },
515
+ {
516
+ inputs: [
517
+ {
518
+ internalType: "address",
519
+ name: "newTreasury",
520
+ type: "address",
521
+ },
522
+ ],
523
+ name: "setTreasury",
524
+ outputs: [],
525
+ stateMutability: "nonpayable",
526
+ type: "function",
527
+ },
528
+ {
529
+ inputs: [
530
+ {
531
+ internalType: "address",
532
+ name: "newOwner",
533
+ type: "address",
534
+ },
535
+ {
536
+ internalType: "bool",
537
+ name: "direct",
538
+ type: "bool",
539
+ },
540
+ {
541
+ internalType: "bool",
542
+ name: "renounce",
543
+ type: "bool",
544
+ },
545
+ ],
546
+ name: "transferOwnership",
547
+ outputs: [],
548
+ stateMutability: "nonpayable",
549
+ type: "function",
550
+ },
551
+ {
552
+ inputs: [],
553
+ name: "treasury",
554
+ outputs: [
555
+ {
556
+ internalType: "address",
557
+ name: "",
558
+ type: "address",
559
+ },
560
+ ],
561
+ stateMutability: "view",
562
+ type: "function",
563
+ },
564
+ {
565
+ inputs: [],
566
+ name: "ytCreationCodeContractA",
567
+ outputs: [
568
+ {
569
+ internalType: "address",
570
+ name: "",
571
+ type: "address",
572
+ },
573
+ ],
574
+ stateMutability: "view",
575
+ type: "function",
576
+ },
577
+ {
578
+ inputs: [],
579
+ name: "ytCreationCodeContractB",
580
+ outputs: [
581
+ {
582
+ internalType: "address",
583
+ name: "",
584
+ type: "address",
585
+ },
586
+ ],
587
+ stateMutability: "view",
588
+ type: "function",
589
+ },
590
+ {
591
+ inputs: [],
592
+ name: "ytCreationCodeSizeA",
593
+ outputs: [
594
+ {
595
+ internalType: "uint256",
596
+ name: "",
597
+ type: "uint256",
598
+ },
599
+ ],
600
+ stateMutability: "view",
601
+ type: "function",
602
+ },
603
+ {
604
+ inputs: [],
605
+ name: "ytCreationCodeSizeB",
606
+ outputs: [
607
+ {
608
+ internalType: "uint256",
609
+ name: "",
610
+ type: "uint256",
611
+ },
612
+ ],
613
+ stateMutability: "view",
614
+ type: "function",
615
+ },
616
+ ];
617
+
618
+ const _bytecode =
619
+ "0x610100604052348015610010575f5ffd5b5060405161385838038061385883398101604081905261002f91610144565b6001600160a01b0380851660805260a0849052821660c05260e081905261005461005d565b50505050610186565b600154600160a81b900460ff16156100cb5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b600154600160a01b900460ff90811614610127576001805460ff60a01b191660ff60a01b17905560405160ff81527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811461013f575f5ffd5b919050565b5f5f5f5f60808587031215610157575f5ffd5b61016085610129565b6020860151909450925061017660408601610129565b6060959095015193969295505050565b60805160a05160c05160e0516136836101d55f395f81816102ff0152610d3801525f81816101bb0152610d1701525f818161013a0152610cf601525f81816103a10152610cd501526136835ff3fe608060405234801561000f575f5ffd5b5060043610610131575f3560e01c806307274b1914610135578063078dfbe71461016f57806318b7373d146101845780632cb5b6c1146101b657806344601d69146101ea5780634e71e0c8146101fd578063586007bc146102055780635aa175c31461021857806361d027b31461022b57806371846aa81461023e5780637d39cabf1461026057806387efe5a7146102735780638c9f7962146102a65780638da5cb5b146102d957806395ce8917146102eb578063a14135f5146102fa578063dd86fea114610321578063e28a68b614610341578063e30c397814610362578063e9e5f3cf14610375578063ea938547146102eb578063ebd7cb8a1461039c578063f0f44260146103c3578063f5de2d1f146103d6578063ffa1ad74146103f0575b5f5ffd5b61015c7f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61018261017d366004611ad6565b610421565b005b6101a6610192366004611b18565b60366020525f908152604090205460ff1681565b6040519015158152602001610166565b6101dd7f000000000000000000000000000000000000000000000000000000000000000081565b6040516101669190611b33565b6101826101f8366004611b5d565b610523565b6101826105df565b610182610213366004611b8c565b610687565b610182610226366004611ba5565b610729565b6033546101dd906001600160a01b031681565b6101a661024c366004611b18565b60376020525f908152604090205460ff1681565b61018261026e366004611b5d565b61087b565b6101dd610281366004611c0c565b603460209081525f92835260408084209091529082529020546001600160a01b031681565b6101dd6102b4366004611c0c565b603560209081525f92835260408084209091529082529020546001600160a01b031681565b5f546101dd906001600160a01b031681565b61015c6702c68af0bb14000081565b61015c7f000000000000000000000000000000000000000000000000000000000000000081565b603254610334906001600160801b031681565b6040516101669190611c36565b61035461034f366004611c4a565b61092d565b604051610166929190611c7f565b6001546101dd906001600160a01b031681565b60335461038f90600160a01b90046001600160601b031681565b6040516101669190611c99565b6101dd7f000000000000000000000000000000000000000000000000000000000000000081565b6101826103d1366004611b18565b610e8d565b60325461033490600160801b90046001600160801b031681565b610414604051806040016040528060058152602001640342e302e360dc1b81525081565b6040516101669190611cfa565b5f546001600160a01b031633146104535760405162461bcd60e51b815260040161044a90611d0c565b60405180910390fd5b8115610501576001600160a01b03831615158061046d5750805b6104b15760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b604482015260640161044a565b5f80546040516001600160a01b03808716939216915f51602061362e5f395f51905f5291a35f80546001600160a01b0385166001600160a01b031991821617909155600180549091169055505050565b600180546001600160a01b0385166001600160a01b0319909116179055505050565b5f546001600160a01b0316331461054c5760405162461bcd60e51b815260040161044a90611d0c565b6702c68af0bb140000816001600160801b0316111561058a57806702c68af0bb140000604051635dbf545160e01b815260040161044a929190611d41565b603280546001600160801b03808416600160801b0291161790556040517f8dfda2f0f14feea9a776359ded0d062934c38098a21d140fcdd9a3dbfb6294c1906105d4908390611c36565b60405180910390a150565b6001546001600160a01b031633811461063a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e6572604482015260640161044a565b5f80546040516001600160a01b03808516939216915f51602061362e5f395f51905f5291a35f80546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b5f546001600160a01b031633146106b05760405162461bcd60e51b815260040161044a90611d0c565b806001600160601b03165f036106d95760405163f2baeb4960e01b815260040160405180910390fd5b603380546001600160a01b0316600160a01b6001600160601b038416021790556040517fdaf60f79a59eb1d8c1748ab26dc83c44f364ce8c1fc497ec2df45d9538a1aa11906105d4908390611c99565b600154600160a81b900460ff161580801561074f575060018054600160a01b900460ff16105b8061076f5750303b15801561076f575060018054600160a01b900460ff16145b6107d25760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161044a565b6001805460ff60a01b1916600160a01b17905580156107ff576001805460ff60a81b1916600160a81b1790555b61080882610f26565b61081186610687565b61081a8561087b565b61082384610523565b61082c83610e8d565b8015610873576001805460ff60a81b191681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b5f546001600160a01b031633146108a45760405162461bcd60e51b815260040161044a90611d0c565b6702c68af0bb140000816001600160801b031611156108e257806702c68af0bb140000604051630f9818e760e31b815260040161044a929190611d41565b603280546001600160801b0319166001600160801b0383161790556040517fa9d618683ded3ac7317e1717ad10e9e3b92041092a8e97ceb038c699cc54d640906105d4908390611c36565b5f8063ffffffff84164210158061096e575060335461096290600160a01b90046001600160601b031663ffffffff8616611d6e565b6001600160601b031615155b1561098c576040516301f687fd60e41b815260040160405180910390fd5b6001600160a01b038581165f90815260346020908152604080832063ffffffff8916845290915290205416156109d557604051635286ca8160e11b815260040160405180910390fd5b5f8590505f816001600160a01b031663a40bee506040518163ffffffff1660e01b8152600401606060405180830381865afa158015610a16573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a3a9190611d9c565b925050505f610aa9836001600160a01b03166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa158015610a7d573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610aa49190810190611e02565b610fb4565b90505f610aea846001600160a01b03166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa158015610a7d573d5f5f3e3d5ffd5b9050610c005f465f1b60405180602001610b0390611a86565b6020820181038252601f19601f820116604052508c610b68878e63ffffffff16604051806040016040528060018152602001600160fd1b81525060405180604001604052806002815260200161141560f21b815250611035909392919063ffffffff16565b610bb8878f63ffffffff16604051806040016040528060018152602001602d60f81b81525060405180604001604052806002815260200161141560f21b815250611035909392919063ffffffff16565b898f604051602001610bce959493929190611ea6565b60408051601f1981840301815290829052610bec9291602001611efd565b604051602081830303815290604052611071565b9550610d5c5f465f1b8b89610c5b878e63ffffffff16604051806040016040528060018152602001600160fd1b81525060405180604001604052806002815260200161165560f21b815250611035909392919063ffffffff16565b610cab878f63ffffffff16604051806040016040528060018152602001602d60f81b81525060405180604001604052806002815260200161165560f21b815250611035909392919063ffffffff16565b898f8f604051602001610cc49796959493929190611f2b565b6040516020818303038152906040527f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611176565b60405163189acdbd60e31b81529095506001600160a01b0387169063c4d66de890610d8b908890600401611b33565b5f604051808303815f87803b158015610da2575f5ffd5b505af1158015610db4573d5f5f3e3d5ffd5b505050506001600160a01b038981165f81815260346020908152604080832063ffffffff8e1680855290835281842080548d88166001600160a01b031991821681179092558686526035855283862083875285528386208054988e169890911688179055845260368352818420805460ff199081166001908117909255968552603790935292819020805490951690911790935591517faa79d8f17776adeaa316c5411b72e8b0057d064974fa8748f32492ecaa22ecd190610e79908a908a90611c7f565b60405180910390a350505050935093915050565b5f546001600160a01b03163314610eb65760405162461bcd60e51b815260040161044a90611d0c565b6001600160a01b038116610edd5760405163b8c9673160e01b815260040160405180910390fd5b603380546001600160a01b0319166001600160a01b0383169081179091556040517fcb7ef3e545f5cdb893f5c568ba710fe08f336375a2d9fd66e161033f8fc09ef3905f90a250565b600154600160a81b900460ff16610f935760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840161044a565b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b60605f610fc08361119f565b90505f610fe760405180604001604052806003815260200162029ac960ed1b81525061119f565b90505f61100e6040518060400160405280600381526020016253592d60e81b81525061119f565b905061102c6110278261102186866111c5565b906111c5565b611241565b95945050505050565b606084828584611044876112ac565b604051602001611058959493929190611f93565b6040516020818303038152906040529050949350505050565b5f834710156110c25760405162461bcd60e51b815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e6365000000604482015260640161044a565b81515f036111125760405162461bcd60e51b815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f604482015260640161044a565b8282516020840186f590506001600160a01b03811661116f5760405162461bcd60e51b8152602060048201526019602482015278437265617465323a204661696c6564206f6e206465706c6f7960381b604482015260640161044a565b9392505050565b5f5f611185878787878761131b565b9050611192898983611071565b9998505050505050505050565b6111a7611a93565b50604080518082019091528151815260209182019181019190915290565b6111cd611a93565b8151835110156111de57508161123b565b60208083015190840151600191146112055750815160208481015190840151829020919020145b80156112365782518451859061121c908390612011565b9052508251602085018051611232908390612024565b9052505b839150505b92915050565b60605f825f01516001600160401b0381111561125f5761125f611dee565b6040519080825280601f01601f191660200182016040528015611289576020820181803683370190505b5090505f6020820190506112a5818560200151865f015161136b565b5092915050565b60605f6112b8836113e4565b90505f6112cb826040015160ff16611566565b90505f6112d783611680565b90505f6112ea845f015161ffff16611566565b905082828260405160200161130193929190612037565b604051602081830303815290604052945050505050919050565b8451604080516020848701808501808401830190945283835291939192908401875f828b3c855f898301893c506020898101908585010161135d818386611805565b505050505095945050505050565b602081106113a35781518352611382602084612024565b925061138f602083612024565b915061139c602082612011565b905061136b565b5f1981156113d15760016113b8836020612011565b6113c49061010061215c565b6113ce9190612011565b90505b9151835183169219169190911790915250565b604080516060810182525f8082526020820181905291810182905290808061140b85611842565b61ffff16845261141c6107b2611936565b845161142b9061ffff16611936565b6114359190612011565b9150611445826301e28500612167565b61144f9084612024565b9250816107b2855f0151611463919061217e565b61ffff166114719190612011565b61147f906301e13380612167565b6114899084612024565b92505f600191505b600c8260ff16116114f8576114a982865f015161197a565b6114b99060ff1662015180612167565b9050856114c68583612024565b11156114da5760ff821660208601526114f8565b6114e48185612024565b9350816114f081612198565b925050611491565b600191505b61150e8560200151865f015161197a565b60ff168260ff161161155d57856115288562015180612024565b111561153c5760ff8216604086015261155d565b6115496201518085612024565b93508161155581612198565b9250506114fd565b50505050919050565b6060815f0361158c5750506040805180820190915260018152600360fc1b602082015290565b815f5b81156115b5578061159f816121b6565b91506115ae9050600a836121ce565b915061158f565b5f816001600160401b038111156115ce576115ce611dee565b6040519080825280601f01601f1916602001820160405280156115f8576020820181803683370190505b5090505f611607600184612011565b90505b85156116775761161b600a876121e1565b611626906030612024565b60f81b82828151811061163b5761163b6121f4565b60200101906001600160f81b03191690815f1a9053508015611665578061166181612208565b9150505b611670600a876121ce565b955061160a565b50949350505050565b604080516101c08101825260036101808201818152622520a760e91b6101a0840152825282518084018452818152622322a160e91b60208281019190915280840191909152835180850185528281526226a0a960e91b8183015283850152835180850185528281526220a82960e91b8183015260608481019190915284518086018652838152624d415960e81b8184015260808501528451808601865283815262252aa760e91b8184015260a0850152845180860186528381526212955360ea1b8184015260c0850152845180860186528381526241554760e81b8184015260e0850152845180860186528381526205345560ec1b81840152610100850152845180860186528381526213d0d560ea1b8184015261012085015284518086018652838152622727ab60e91b8184015261014085015284518086019095529184526244454360e81b848201526101608301939093529183015181906117e69060019061221d565b60ff16600c81106117f9576117f96121f4565b60200201519392505050565b5b60208110611825578151835260209283019290910190601f1901611806565b905182516020929092036101000a5f190180199091169116179052565b5f8080806118546301e13380866121ce565b611860906107b2612024565b915061186d6107b2611936565b61187a8361ffff16611936565b6118849190612011565b9050611894816301e28500612167565b61189e9084612024565b9250806118ad6107b28461217e565b61ffff166118bb9190612011565b6118c9906301e13380612167565b6118d39084612024565b92505b8483111561192e576118f16118ec60018461217e565b611a3f565b1561190b576119046301e2850084612011565b925061191c565b6119196301e1338084612011565b92505b61192760018361217e565b91506118d6565b509392505050565b5f611942600183612011565b9150611950610190836121ce565b61195b6064846121ce565b6119666004856121ce565b6119709190612011565b61123b9190612024565b5f8260ff166001148061199057508260ff166003145b8061199e57508260ff166005145b806119ac57508260ff166007145b806119ba57508260ff166008145b806119c857508260ff16600a145b806119d657508260ff16600c145b156119e35750601f61123b565b8260ff16600414806119f857508260ff166006145b80611a0657508260ff166009145b80611a1457508260ff16600b145b15611a215750601e61123b565b611a2a82611a3f565b15611a375750601d61123b565b50601c61123b565b5f611a4b600483612236565b61ffff16158015611a695750611a62606483612236565b61ffff1615155b8061123b5750611a7b61019083612236565b61ffff161592915050565b6113d48061225a83390190565b60405180604001604052805f81526020015f81525090565b6001600160a01b0381168114611abf575f5ffd5b50565b80358015158114611ad1575f5ffd5b919050565b5f5f5f60608486031215611ae8575f5ffd5b8335611af381611aab565b9250611b0160208501611ac2565b9150611b0f60408501611ac2565b90509250925092565b5f60208284031215611b28575f5ffd5b813561116f81611aab565b6001600160a01b0391909116815260200190565b80356001600160801b0381168114611ad1575f5ffd5b5f60208284031215611b6d575f5ffd5b61116f82611b47565b80356001600160601b0381168114611ad1575f5ffd5b5f60208284031215611b9c575f5ffd5b61116f82611b76565b5f5f5f5f5f60a08688031215611bb9575f5ffd5b611bc286611b76565b9450611bd060208701611b47565b9350611bde60408701611b47565b92506060860135611bee81611aab565b91506080860135611bfe81611aab565b809150509295509295909350565b5f5f60408385031215611c1d575f5ffd5b8235611c2881611aab565b946020939093013593505050565b6001600160801b0391909116815260200190565b5f5f5f60608486031215611c5c575f5ffd5b8335611c6781611aab565b9250602084013563ffffffff81168114611b01575f5ffd5b6001600160a01b0392831681529116602082015260400190565b6001600160601b0391909116815260200190565b5f5b83811015611cc7578181015183820152602001611caf565b50505f910152565b5f8151808452611ce6816020860160208601611cad565b601f01601f19169290920160200192915050565b602081525f61116f6020830184611ccf565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6001600160801b03929092168252602082015260400190565b634e487b7160e01b5f52601260045260245ffd5b5f6001600160601b03831680611d8657611d86611d5a565b6001600160601b03929092169190910692915050565b5f5f5f60608486031215611dae575f5ffd5b835160028110611dbc575f5ffd5b6020850151909350611dcd81611aab565b604085015190925060ff81168114611de3575f5ffd5b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215611e12575f5ffd5b81516001600160401b03811115611e27575f5ffd5b8201601f81018413611e37575f5ffd5b80516001600160401b03811115611e5057611e50611dee565b604051601f8201601f19908116603f011681016001600160401b0381118282101715611e7e57611e7e611dee565b604052818152828201602001861015611e95575f5ffd5b61102c826020830160208601611cad565b6001600160a01b038616815260a0602082018190525f90611ec990830187611ccf565b8281036040840152611edb8187611ccf565b91505060ff8416606083015263ffffffff831660808301529695505050505050565b5f8351611f0e818460208801611cad565b835190830190611f22818360208801611cad565b01949350505050565b6001600160a01b0388811682528716602082015260e0604082018190525f90611f5690830188611ccf565b8281036060840152611f688188611ccf565b60ff969096166080840152505063ffffffff9290921660a0830152151560c090910152949350505050565b5f8651611fa4818460208b01611cad565b865190830190611fb8818360208b01611cad565b8651910190611fcb818360208a01611cad565b8551910190611fde818360208901611cad565b8451910190611ff1818360208801611cad565b01979650505050505050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561123b5761123b611ffd565b8082018082111561123b5761123b611ffd565b5f8451612048818460208901611cad565b84519083019061205c818360208901611cad565b845191019061206f818360208801611cad565b0195945050505050565b6001815b60018411156120b45780850481111561209857612098611ffd565b60018416156120a657908102905b60019390931c92800261207d565b935093915050565b5f826120ca5750600161123b565b816120d657505f61123b565b81600181146120ec57600281146120f657612112565b600191505061123b565b60ff84111561210757612107611ffd565b50506001821b61123b565b5060208310610133831016604e8410600b8410161715612135575081810a61123b565b6121415f198484612079565b805f190482111561215457612154611ffd565b029392505050565b5f61116f83836120bc565b808202811582820484141761123b5761123b611ffd565b61ffff828116828216039081111561123b5761123b611ffd565b5f60ff821660ff81036121ad576121ad611ffd565b60010192915050565b5f600182016121c7576121c7611ffd565b5060010190565b5f826121dc576121dc611d5a565b500490565b5f826121ef576121ef611d5a565b500690565b634e487b7160e01b5f52603260045260245ffd5b5f8161221657612216611ffd565b505f190190565b60ff828116828216039081111561123b5761123b611ffd565b5f61ffff83168061224957612249611d5a565b8061ffff8416069150509291505056fe610100604052348015610010575f5ffd5b506040516113d43803806113d483398101604081905261002f91610293565b5f54849084908490610100900460ff161580801561005357505f54600160ff909116105b8061006c5750303b15801561006c57505f5460ff166001145b6100d45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156100f5575f805461ff0019166101001790555b603661010185826103bc565b50603761010e84826103bc565b5060ff821660805261011e610185565b8015610163575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050506001600160a01b0390951660a05260e05250503360c052506104c19050565b5f54610100900460ff166101ab5760405162461bcd60e51b81526004016100cb90610476565b6101b36101b5565b565b5f54610100900460ff166101db5760405162461bcd60e51b81526004016100cb90610476565b60018055565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610204575f5ffd5b81516001600160401b0381111561021d5761021d6101e1565b604051601f8201601f19908116603f011681016001600160401b038111828210171561024b5761024b6101e1565b604052818152838201602001851015610262575f5ffd5b5f5b8281101561028057602081860181015183830182015201610264565b505f918101602001919091529392505050565b5f5f5f5f5f60a086880312156102a7575f5ffd5b85516001600160a01b03811681146102bd575f5ffd5b60208701519095506001600160401b038111156102d8575f5ffd5b6102e4888289016101f5565b604088015190955090506001600160401b03811115610301575f5ffd5b61030d888289016101f5565b935050606086015160ff81168114610323575f5ffd5b60809690960151949793965091949392915050565b600181811c9082168061034c57607f821691505b60208210810361036a57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156103b757805f5260205f20601f840160051c810160208510156103955750805b601f840160051c820191505b818110156103b4575f81556001016103a1565b50505b505050565b81516001600160401b038111156103d5576103d56101e1565b6103e9816103e38454610338565b84610370565b6020601f82116001811461041b575f83156104045750848201515b5f19600385901b1c1916600184901b1784556103b4565b5f84815260208120601f198516915b8281101561044a578785015182556020948501946001909201910161042a565b508482101561046757868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60805160a05160c05160e051610ed26105025f395f818161017901526102db01525f8181610286015261056701525f61024c01525f6101a50152610ed25ff3fe608060405234801561000f575f5ffd5b50600436106100ef575f3560e01c806306fdde03146100f3578063095ea7b31461011157806312a31dcc1461013457806318160ddd1461014957806323b872dd146101645780632f13b60c14610177578063313ce567146101a057806370a08231146101d9578063781c18db1461020157806395d89b411461022c578063a9059cbb14610234578063afd27bf514610247578063b64761f91461026e578063c45a015514610281578063c4d66de8146102a8578063d2c725e0146102bb578063dd62ed3e146102c3578063e184c9be146102d6578063ffa1ad74146102fd575b5f5ffd5b6100fb610321565b6040516101089190610ccd565b60405180910390f35b61012461011f366004610d33565b6103b1565b6040519015158152602001610108565b610147610142366004610d33565b6103ca565b005b6035546001600160f81b03165b604051908152602001610108565b610124610172366004610d5b565b610403565b7f0000000000000000000000000000000000000000000000000000000000000000421015610124565b6101c77f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff9091168152602001610108565b6101566101e7366004610d95565b6001600160a01b03165f9081526033602052604090205490565b603854610214906001600160a01b031681565b6040516001600160a01b039091168152602001610108565b6100fb610437565b610124610242366004610d33565b610446565b6102147f000000000000000000000000000000000000000000000000000000000000000081565b61014761027c366004610d33565b610467565b6102147f000000000000000000000000000000000000000000000000000000000000000081565b6101476102b6366004610d95565b61049c565b610124610608565b6101566102d1366004610dae565b610615565b6101567f000000000000000000000000000000000000000000000000000000000000000081565b6100fb604051806040016040528060058152602001640342e302e360dc1b81525081565b60606036805461033090610ddf565b80601f016020809104026020016040519081016040528092919081815260200182805461035c90610ddf565b80156103a75780601f1061037e576101008083540402835291602001916103a7565b820191905f5260205f20905b81548152906001019060200180831161038a57829003601f168201915b5050505050905090565b5f336103be81858561063f565b60019150505b92915050565b6038546001600160a01b031633146103f557604051631622975360e31b815260040160405180910390fd5b6103ff8282610763565b5050565b5f61040c610868565b336104188582856108c1565b610423858585610939565b505060018080555b9392505050565b905090565b60606037805461033090610ddf565b5f61044f610868565b3361045b818585610939565b505060018080556103c4565b6038546001600160a01b0316331461049257604051631622975360e31b815260040160405180910390fd5b6103ff8282610b4d565b5f54610100900460ff16158080156104ba57505f54600160ff909116105b806104d35750303b1580156104d357505f5460ff166001145b61053b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff19166001179055801561055c575f805461ff0019166101001790555b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105a55760405163fe10817360e01b815260040160405180910390fd5b603880546001600160a01b0319166001600160a01b03841617905580156103ff575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b5f61043260015460021490565b6001600160a01b039182165f90815260346020908152604080832093909416825291909152205490565b6001600160a01b0383166106a15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610532565b6001600160a01b0382166107025760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610532565b6001600160a01b038381165f8181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0382166107b95760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610532565b6107c281610cb5565b603580545f906107dc9084906001600160f81b0316610e2b565b92506101000a8154816001600160f81b0302191690836001600160f81b031602179055508060335f846001600160a01b03166001600160a01b031681526020019081526020015f205f8282546108329190610e4a565b90915550506040518181526001600160a01b038316905f905f516020610e7d5f395f51905f529060200160405180910390a35050565b6002600154036108ba5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610532565b6002600155565b5f6108cc8484610615565b90505f19811461093357818110156109265760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610532565b610933848484840361063f565b50505050565b6001600160a01b03831661099d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610532565b6001600160a01b0382166109ff5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610532565b816001600160a01b0316836001600160a01b031603610a5a5760405162461bcd60e51b815260206004820152601760248201527622a92199181d103a3930b739b332b9103a379039b2b63360491b6044820152606401610532565b6001600160a01b0383165f9081526033602052604090205481811015610ad15760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610532565b6001600160a01b038085165f90815260336020526040808220858503905591851681529081208054849290610b07908490610e4a565b92505081905550826001600160a01b0316846001600160a01b03165f516020610e7d5f395f51905f5284604051610b4091815260200190565b60405180910390a3610933565b6001600160a01b038216610bad5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610532565b6001600160a01b0382165f9081526033602052604090205481811015610c205760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610532565b6001600160a01b0383165f9081526033602052604090208282039055610c4582610cb5565b603580545f90610c5f9084906001600160f81b0316610e5d565b92506101000a8154816001600160f81b0302191690836001600160f81b031602179055505f6001600160a01b0316836001600160a01b03165f516020610e7d5f395f51905f528460405161075691815260200190565b5f6001600160f81b03821115610cc9575f5ffd5b5090565b602081525f82518060208401525f5b81811015610cf95760208186018101516040868401015201610cdc565b505f604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610d2e575f5ffd5b919050565b5f5f60408385031215610d44575f5ffd5b610d4d83610d18565b946020939093013593505050565b5f5f5f60608486031215610d6d575f5ffd5b610d7684610d18565b9250610d8460208501610d18565b929592945050506040919091013590565b5f60208284031215610da5575f5ffd5b61042b82610d18565b5f5f60408385031215610dbf575f5ffd5b610dc883610d18565b9150610dd660208401610d18565b90509250929050565b600181811c90821680610df357607f821691505b602082108103610e1157634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160f81b0381811683821601908111156103c4576103c4610e17565b808201808211156103c4576103c4610e17565b6001600160f81b0382811682821603908111156103c4576103c4610e1756feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220f93c1e4d54b74e31ebdc440143f9dcc2e0e3a11e03e4560778ffd58d3e17280864736f6c634300081e00338be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a2646970667358221220795cd63041186beb569d61fdbe060a9bb717ce2ba42ad81fd9950d0efa3a3a9964736f6c634300081e0033";
620
+
621
+ type PendleYieldContractFactoryUpgConstructorParams =
622
+ | [signer?: Signer]
623
+ | ConstructorParameters<typeof ContractFactory>;
624
+
625
+ const isSuperArgs = (
626
+ xs: PendleYieldContractFactoryUpgConstructorParams
627
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
628
+
629
+ export class PendleYieldContractFactoryUpg__factory extends ContractFactory {
630
+ constructor(...args: PendleYieldContractFactoryUpgConstructorParams) {
631
+ if (isSuperArgs(args)) {
632
+ super(...args);
633
+ } else {
634
+ super(_abi, _bytecode, args[0]);
635
+ }
636
+ this.contractName = "PendleYieldContractFactoryUpg";
637
+ }
638
+
639
+ deploy(
640
+ _ytCreationCodeContractA: string,
641
+ _ytCreationCodeSizeA: BigNumberish,
642
+ _ytCreationCodeContractB: string,
643
+ _ytCreationCodeSizeB: BigNumberish,
644
+ overrides?: Overrides & { from?: string | Promise<string> }
645
+ ): Promise<PendleYieldContractFactoryUpg> {
646
+ return super.deploy(
647
+ _ytCreationCodeContractA,
648
+ _ytCreationCodeSizeA,
649
+ _ytCreationCodeContractB,
650
+ _ytCreationCodeSizeB,
651
+ overrides || {}
652
+ ) as Promise<PendleYieldContractFactoryUpg>;
653
+ }
654
+ getDeployTransaction(
655
+ _ytCreationCodeContractA: string,
656
+ _ytCreationCodeSizeA: BigNumberish,
657
+ _ytCreationCodeContractB: string,
658
+ _ytCreationCodeSizeB: BigNumberish,
659
+ overrides?: Overrides & { from?: string | Promise<string> }
660
+ ): TransactionRequest {
661
+ return super.getDeployTransaction(
662
+ _ytCreationCodeContractA,
663
+ _ytCreationCodeSizeA,
664
+ _ytCreationCodeContractB,
665
+ _ytCreationCodeSizeB,
666
+ overrides || {}
667
+ );
668
+ }
669
+ attach(address: string): PendleYieldContractFactoryUpg {
670
+ return super.attach(address) as PendleYieldContractFactoryUpg;
671
+ }
672
+ connect(signer: Signer): PendleYieldContractFactoryUpg__factory {
673
+ return super.connect(signer) as PendleYieldContractFactoryUpg__factory;
674
+ }
675
+ static readonly contractName: "PendleYieldContractFactoryUpg";
676
+ public readonly contractName: "PendleYieldContractFactoryUpg";
677
+ static readonly bytecode = _bytecode;
678
+ static readonly abi = _abi;
679
+ static createInterface(): PendleYieldContractFactoryUpgInterface {
680
+ return new utils.Interface(_abi) as PendleYieldContractFactoryUpgInterface;
681
+ }
682
+ static connect(
683
+ address: string,
684
+ signerOrProvider: Signer | Provider
685
+ ): PendleYieldContractFactoryUpg {
686
+ return new Contract(
687
+ address,
688
+ _abi,
689
+ signerOrProvider
690
+ ) as PendleYieldContractFactoryUpg;
691
+ }
692
+ }