@pendle/core-v2 2.5.0-mainnet → 2.6.0-mainnet

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 (75) hide show
  1. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiq.sol/IPActionAddRemoveLiq.dbg.json +1 -1
  2. package/build/artifacts/contracts/interfaces/IPActionMintRedeem.sol/IPActionMintRedeem.dbg.json +1 -1
  3. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  4. package/build/artifacts/contracts/interfaces/IPActionSwapPT.sol/IPActionSwapPT.dbg.json +1 -1
  5. package/build/artifacts/contracts/interfaces/IPActionSwapYT.sol/IPActionSwapYT.dbg.json +1 -1
  6. package/build/artifacts/contracts/interfaces/IPAllAction.sol/IPAllAction.dbg.json +1 -1
  7. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +4 -0
  8. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.json +888 -0
  9. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  10. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  11. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  12. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  13. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  14. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  15. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  16. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  17. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
  18. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  19. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  20. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  21. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  22. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  23. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  24. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.dbg.json +1 -1
  25. package/build/artifacts/contracts/router/ActionAddRemoveLiq.sol/ActionAddRemoveLiq.json +2 -2
  26. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.dbg.json +1 -1
  27. package/build/artifacts/contracts/router/ActionMintRedeem.sol/ActionMintRedeem.json +2 -2
  28. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.dbg.json +1 -1
  29. package/build/artifacts/contracts/router/ActionSwapPT.sol/ActionSwapPT.json +2 -2
  30. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.dbg.json +1 -1
  31. package/build/artifacts/contracts/router/ActionSwapYT.sol/ActionSwapYT.json +2 -2
  32. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.dbg.json +1 -1
  33. package/build/artifacts/contracts/router/PendleRouter.sol/PendleRouter.json +2 -2
  34. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +4 -0
  35. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +1032 -0
  36. package/build/artifacts/contracts/router/base/ActionBaseCallback.sol/ActionBaseCallback.dbg.json +1 -1
  37. package/build/artifacts/contracts/router/base/ActionBaseMintRedeem.sol/ActionBaseMintRedeem.dbg.json +1 -1
  38. package/contracts/interfaces/IPRouterHelper.sol +176 -0
  39. package/contracts/router/PendleRouterHelper.sol +359 -0
  40. package/contracts/router/base/ActionBaseMintRedeem.sol +5 -4
  41. package/deployments/1-core.json +1 -1
  42. package/deployments/42161-core.json +1 -1
  43. package/package.json +2 -2
  44. package/typechain-types/AggregatorInterface.ts +233 -0
  45. package/typechain-types/AggregatorV2V3Interface.ts +385 -0
  46. package/typechain-types/AggregatorV3Interface.ts +221 -0
  47. package/typechain-types/IPRouterHelper.ts +84 -12
  48. package/typechain-types/PendlePtAssetOracle.ts +167 -0
  49. package/typechain-types/PendlePtChainlinkOracle.ts +215 -0
  50. package/typechain-types/PendlePtSingleAssetOracle.ts +167 -0
  51. package/typechain-types/PendlePtUSDOracle.ts +215 -0
  52. package/typechain-types/PendleRouterHelper.ts +84 -12
  53. package/typechain-types/factories/ActionAddRemoveLiq__factory.ts +1 -1
  54. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  55. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  56. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
  57. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  58. package/typechain-types/factories/ActionMintRedeem__factory.ts +1 -1
  59. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  60. package/typechain-types/factories/ActionSwapPT__factory.ts +1 -1
  61. package/typechain-types/factories/ActionSwapYT__factory.ts +1 -1
  62. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  63. package/typechain-types/factories/AggregatorInterface__factory.ts +153 -0
  64. package/typechain-types/factories/AggregatorV2V3Interface__factory.ts +268 -0
  65. package/typechain-types/factories/AggregatorV3Interface__factory.ts +141 -0
  66. package/typechain-types/factories/IPRouterHelper__factory.ts +141 -0
  67. package/typechain-types/factories/PendlePtAssetOracle__factory.ts +199 -0
  68. package/typechain-types/factories/PendlePtChainlinkOracle__factory.ts +251 -0
  69. package/typechain-types/factories/PendlePtSingleAssetOracle__factory.ts +203 -0
  70. package/typechain-types/factories/PendlePtUSDOracle__factory.ts +247 -0
  71. package/typechain-types/factories/PendleRouterHelper__factory.ts +142 -1
  72. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  73. package/typechain-types/factories/PendleRouter__factory.ts +1 -1
  74. package/typechain-types/hardhat.d.ts +45 -27
  75. package/typechain-types/index.ts +10 -6
@@ -0,0 +1,141 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Contract, Signer, utils } from "ethers";
6
+ import { Provider } from "@ethersproject/providers";
7
+ import type {
8
+ AggregatorV3Interface,
9
+ AggregatorV3InterfaceInterface,
10
+ } from "../AggregatorV3Interface";
11
+
12
+ const _abi = [
13
+ {
14
+ inputs: [],
15
+ name: "decimals",
16
+ outputs: [
17
+ {
18
+ internalType: "uint8",
19
+ name: "",
20
+ type: "uint8",
21
+ },
22
+ ],
23
+ stateMutability: "view",
24
+ type: "function",
25
+ },
26
+ {
27
+ inputs: [],
28
+ name: "description",
29
+ outputs: [
30
+ {
31
+ internalType: "string",
32
+ name: "",
33
+ type: "string",
34
+ },
35
+ ],
36
+ stateMutability: "view",
37
+ type: "function",
38
+ },
39
+ {
40
+ inputs: [
41
+ {
42
+ internalType: "uint80",
43
+ name: "_roundId",
44
+ type: "uint80",
45
+ },
46
+ ],
47
+ name: "getRoundData",
48
+ outputs: [
49
+ {
50
+ internalType: "uint80",
51
+ name: "roundId",
52
+ type: "uint80",
53
+ },
54
+ {
55
+ internalType: "int256",
56
+ name: "answer",
57
+ type: "int256",
58
+ },
59
+ {
60
+ internalType: "uint256",
61
+ name: "startedAt",
62
+ type: "uint256",
63
+ },
64
+ {
65
+ internalType: "uint256",
66
+ name: "updatedAt",
67
+ type: "uint256",
68
+ },
69
+ {
70
+ internalType: "uint80",
71
+ name: "answeredInRound",
72
+ type: "uint80",
73
+ },
74
+ ],
75
+ stateMutability: "view",
76
+ type: "function",
77
+ },
78
+ {
79
+ inputs: [],
80
+ name: "latestRoundData",
81
+ outputs: [
82
+ {
83
+ internalType: "uint80",
84
+ name: "roundId",
85
+ type: "uint80",
86
+ },
87
+ {
88
+ internalType: "int256",
89
+ name: "answer",
90
+ type: "int256",
91
+ },
92
+ {
93
+ internalType: "uint256",
94
+ name: "startedAt",
95
+ type: "uint256",
96
+ },
97
+ {
98
+ internalType: "uint256",
99
+ name: "updatedAt",
100
+ type: "uint256",
101
+ },
102
+ {
103
+ internalType: "uint80",
104
+ name: "answeredInRound",
105
+ type: "uint80",
106
+ },
107
+ ],
108
+ stateMutability: "view",
109
+ type: "function",
110
+ },
111
+ {
112
+ inputs: [],
113
+ name: "version",
114
+ outputs: [
115
+ {
116
+ internalType: "uint256",
117
+ name: "",
118
+ type: "uint256",
119
+ },
120
+ ],
121
+ stateMutability: "view",
122
+ type: "function",
123
+ },
124
+ ];
125
+
126
+ export class AggregatorV3Interface__factory {
127
+ static readonly abi = _abi;
128
+ static createInterface(): AggregatorV3InterfaceInterface {
129
+ return new utils.Interface(_abi) as AggregatorV3InterfaceInterface;
130
+ }
131
+ static connect(
132
+ address: string,
133
+ signerOrProvider: Signer | Provider
134
+ ): AggregatorV3Interface {
135
+ return new Contract(
136
+ address,
137
+ _abi,
138
+ signerOrProvider
139
+ ) as AggregatorV3Interface;
140
+ }
141
+ }
@@ -262,6 +262,147 @@ const _abi = [
262
262
  name: "RemoveLiquiditySingleToken",
263
263
  type: "event",
264
264
  },
265
+ {
266
+ inputs: [
267
+ {
268
+ components: [
269
+ {
270
+ internalType: "address",
271
+ name: "market",
272
+ type: "address",
273
+ },
274
+ {
275
+ internalType: "uint256",
276
+ name: "netLpToRemove",
277
+ type: "uint256",
278
+ },
279
+ {
280
+ internalType: "bool",
281
+ name: "doRedeemRewards",
282
+ type: "bool",
283
+ },
284
+ ],
285
+ internalType: "struct IPRouterHelper.RemoveLiquiditySingleSyStruct",
286
+ name: "fromMarket",
287
+ type: "tuple",
288
+ },
289
+ ],
290
+ name: "removeLiquiditySingleSy",
291
+ outputs: [
292
+ {
293
+ internalType: "uint256",
294
+ name: "netSyOut",
295
+ type: "uint256",
296
+ },
297
+ {
298
+ internalType: "uint256",
299
+ name: "netSyFee",
300
+ type: "uint256",
301
+ },
302
+ ],
303
+ stateMutability: "nonpayable",
304
+ type: "function",
305
+ },
306
+ {
307
+ inputs: [
308
+ {
309
+ components: [
310
+ {
311
+ internalType: "address",
312
+ name: "market",
313
+ type: "address",
314
+ },
315
+ {
316
+ internalType: "uint256",
317
+ name: "netLpToRemove",
318
+ type: "uint256",
319
+ },
320
+ {
321
+ internalType: "bool",
322
+ name: "doRedeemRewards",
323
+ type: "bool",
324
+ },
325
+ {
326
+ components: [
327
+ {
328
+ internalType: "address",
329
+ name: "tokenOut",
330
+ type: "address",
331
+ },
332
+ {
333
+ internalType: "uint256",
334
+ name: "minTokenOut",
335
+ type: "uint256",
336
+ },
337
+ {
338
+ internalType: "address",
339
+ name: "tokenRedeemSy",
340
+ type: "address",
341
+ },
342
+ {
343
+ internalType: "address",
344
+ name: "bulk",
345
+ type: "address",
346
+ },
347
+ {
348
+ internalType: "address",
349
+ name: "pendleSwap",
350
+ type: "address",
351
+ },
352
+ {
353
+ components: [
354
+ {
355
+ internalType: "enum SwapType",
356
+ name: "swapType",
357
+ type: "uint8",
358
+ },
359
+ {
360
+ internalType: "address",
361
+ name: "extRouter",
362
+ type: "address",
363
+ },
364
+ {
365
+ internalType: "bytes",
366
+ name: "extCalldata",
367
+ type: "bytes",
368
+ },
369
+ {
370
+ internalType: "bool",
371
+ name: "needScale",
372
+ type: "bool",
373
+ },
374
+ ],
375
+ internalType: "struct SwapData",
376
+ name: "swapData",
377
+ type: "tuple",
378
+ },
379
+ ],
380
+ internalType: "struct TokenOutput",
381
+ name: "output",
382
+ type: "tuple",
383
+ },
384
+ ],
385
+ internalType: "struct IPRouterHelper.RemoveLiquiditySingleTokenStruct",
386
+ name: "fromMarket",
387
+ type: "tuple",
388
+ },
389
+ ],
390
+ name: "removeLiquiditySingleToken",
391
+ outputs: [
392
+ {
393
+ internalType: "uint256",
394
+ name: "netTokenOut",
395
+ type: "uint256",
396
+ },
397
+ {
398
+ internalType: "uint256",
399
+ name: "netSyFee",
400
+ type: "uint256",
401
+ },
402
+ ],
403
+ stateMutability: "nonpayable",
404
+ type: "function",
405
+ },
265
406
  {
266
407
  inputs: [
267
408
  {
@@ -0,0 +1,199 @@
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
+ PendlePtAssetOracle,
15
+ PendlePtAssetOracleInterface,
16
+ } from "../PendlePtAssetOracle";
17
+
18
+ const _abi = [
19
+ {
20
+ inputs: [
21
+ {
22
+ internalType: "address",
23
+ name: "_market",
24
+ type: "address",
25
+ },
26
+ {
27
+ internalType: "uint32",
28
+ name: "_twapDuration",
29
+ type: "uint32",
30
+ },
31
+ {
32
+ internalType: "uint16",
33
+ name: "_numSlotRequired",
34
+ type: "uint16",
35
+ },
36
+ ],
37
+ stateMutability: "nonpayable",
38
+ type: "constructor",
39
+ },
40
+ {
41
+ inputs: [],
42
+ name: "PT",
43
+ outputs: [
44
+ {
45
+ internalType: "contract IPPrincipalToken",
46
+ name: "",
47
+ type: "address",
48
+ },
49
+ ],
50
+ stateMutability: "view",
51
+ type: "function",
52
+ },
53
+ {
54
+ inputs: [],
55
+ name: "SY",
56
+ outputs: [
57
+ {
58
+ internalType: "contract IStandardizedYield",
59
+ name: "",
60
+ type: "address",
61
+ },
62
+ ],
63
+ stateMutability: "view",
64
+ type: "function",
65
+ },
66
+ {
67
+ inputs: [],
68
+ name: "asset",
69
+ outputs: [
70
+ {
71
+ internalType: "address",
72
+ name: "",
73
+ type: "address",
74
+ },
75
+ ],
76
+ stateMutability: "view",
77
+ type: "function",
78
+ },
79
+ {
80
+ inputs: [],
81
+ name: "decimals",
82
+ outputs: [
83
+ {
84
+ internalType: "uint8",
85
+ name: "",
86
+ type: "uint8",
87
+ },
88
+ ],
89
+ stateMutability: "pure",
90
+ type: "function",
91
+ },
92
+ {
93
+ inputs: [],
94
+ name: "getPtRate",
95
+ outputs: [
96
+ {
97
+ internalType: "uint256",
98
+ name: "rate",
99
+ type: "uint256",
100
+ },
101
+ ],
102
+ stateMutability: "view",
103
+ type: "function",
104
+ },
105
+ {
106
+ inputs: [],
107
+ name: "market",
108
+ outputs: [
109
+ {
110
+ internalType: "address",
111
+ name: "",
112
+ type: "address",
113
+ },
114
+ ],
115
+ stateMutability: "view",
116
+ type: "function",
117
+ },
118
+ {
119
+ inputs: [],
120
+ name: "twapDuration",
121
+ outputs: [
122
+ {
123
+ internalType: "uint32",
124
+ name: "",
125
+ type: "uint32",
126
+ },
127
+ ],
128
+ stateMutability: "view",
129
+ type: "function",
130
+ },
131
+ ];
132
+
133
+ const _bytecode =
134
+ "0x6101206040523480156200001257600080fd5b5060405162000dff38038062000dff8339810160408190526200003591620001b2565b6001600160a01b03831660a081905263ffffffff8316608052604051631bea2f1d60e11b815261ffff831660048201526337d45e3a90602401600060405180830381600087803b1580156200008957600080fd5b505af11580156200009e573d6000803e3d6000fd5b5050505060a0516001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa158015620000e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000109919062000214565b506001600160a01b0390811660c0521660e081905260408051630a40bee560e41b8152905163a40bee50916004808201926060929091908290030181865afa1580156200015a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200018091906200025d565b506001600160a01b03166101005250620002ae92505050565b6001600160a01b0381168114620001af57600080fd5b50565b600080600060608486031215620001c857600080fd5b8351620001d58162000199565b602085015190935063ffffffff81168114620001f057600080fd5b604085015190925061ffff811681146200020957600080fd5b809150509250925092565b6000806000606084860312156200022a57600080fd5b8351620002378162000199565b60208501519093506200024a8162000199565b6040850151909250620002098162000199565b6000806000606084860312156200027357600080fd5b8351600281106200028357600080fd5b6020850151909350620002968162000199565b604085015190925060ff811681146200020957600080fd5b60805160a05160c05160e05161010051610af26200030d600039600060c7015260006101430152600061016a01526000818161011c0152818161019101526102f401526000818160770152818161029301526103720152610af26000f3fe608060405234801561001057600080fd5b506004361061006d5760003560e01c806326d8954514610072578063313ce567146100b357806338d52e0f146100c25780635d77d43a1461010157806380f5560514610117578063afd27bf51461013e578063d94073d414610165575b600080fd5b6100997f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff90911681526020015b60405180910390f35b604051601281526020016100aa565b6100e97f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100aa565b61010961018c565b6040519081526020016100aa565b6100e97f000000000000000000000000000000000000000000000000000000000000000081565b6100e97f000000000000000000000000000000000000000000000000000000000000000081565b6100e97f000000000000000000000000000000000000000000000000000000000000000081565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e184c9be6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101ed573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102119190610896565b905042811061022957670de0b6b3a764000091505090565b600061023361026c565b9050600061024142846108c5565b9050600061024f83836103f1565b9050610263670de0b6b3a764000082610432565b94505050505090565b604080516002808252606082018352600092839291906020830190803683370190505090507f0000000000000000000000000000000000000000000000000000000000000000816000815181106102c5576102c56108ee565b63ffffffff9092166020928302919091019091015260405163883bdbfd60e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063883bdbfd90610329908590600401610904565b600060405180830381865afa158015610346573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261036e919081019061096a565b90507f000000000000000000000000000000000000000000000000000000000000000063ffffffff16816000815181106103aa576103aa6108ee565b6020026020010151826001815181106103c5576103c56108ee565b60200260200101516103d79190610a2e565b6103e19190610a6b565b6001600160d81b03169250505090565b6000806104036201518061016d610a91565b61040d8486610a91565b6104179190610aa8565b905061042a61042582610463565b61047d565b949350505050565b600080610447670de0b6b3a764000085610a91565b905082818161045857610458610a55565b049150505b92915050565b60006001600160ff1b0382111561047957600080fd5b5090565b6000680238fd42c5cf03ffff1982121580156104a2575068070c1cc73b00c800008213155b6104e55760405162461bcd60e51b815260206004820152601060248201526f125b9d985b1a5908195e1c1bdb995b9d60821b604482015260640160405180910390fd5b600082121561051d576104fa8260000361047d565b6a0c097ce7bc90715b34b9f160241b8161051657610516610a55565b0592915050565b60006806f05b59d3b2000000831261055b57506806f05b59d3b1ffffff199091019072195e54c5dd42177f53a27172fa9ec63026282760241b610591565b6803782dace9d9000000831261058d57506803782dace9d8ffffff19909101906b1425982cf597cd205cef7380610591565b5060015b6064929092029168056bc75e2d6310000068ad78ebc5ac6200000084126105e15768ad78ebc5ac61ffffff199093019268056bc75e2d631000006e01855144814a7ff805980ff008400082020590505b6856bc75e2d631000000841261061d576856bc75e2d630ffffff199093019268056bc75e2d631000006b02df0ab5a80a22c61ab5a70082020590505b682b5e3af16b18800000841261065757682b5e3af16b187fffff199093019268056bc75e2d63100000693f1fce3da636ea5cf85082020590505b6815af1d78b58c4000008412610691576815af1d78b58c3fffff199093019268056bc75e2d63100000690127fa27722cc06cc5e282020590505b680ad78ebc5ac620000084126106ca57680ad78ebc5ac61fffff199093019268056bc75e2d6310000068280e60114edb805d0382020590505b68056bc75e2d6310000084126107035768056bc75e2d630fffff199093019268056bc75e2d63100000680ebc5fb4174612111082020590505b6802b5e3af16b1880000841261073c576802b5e3af16b187ffff199093019268056bc75e2d631000006808f00f760a4b2db55d82020590505b68015af1d78b58c4000084126107755768015af1d78b58c3ffff199093019268056bc75e2d631000006806f5f177578893793782020590505b68056bc75e2d631000008481019085906002908280020505918201919050600368056bc75e2d631000008783020505918201919050600468056bc75e2d631000008783020505918201919050600568056bc75e2d631000008783020505918201919050600668056bc75e2d631000008783020505918201919050600768056bc75e2d631000008783020505918201919050600868056bc75e2d631000008783020505918201919050600968056bc75e2d631000008783020505918201919050600a68056bc75e2d631000008783020505918201919050600b68056bc75e2d631000008783020505918201919050600c68056bc75e2d631000008783020505918201919050606468056bc75e2d63100000848402058502059695505050505050565b6000602082840312156108a857600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561045d5761045d6108af565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6020808252825182820181905260009190848201906040850190845b8181101561094257835163ffffffff1683529284019291840191600101610920565b50909695505050505050565b80516001600160d81b038116811461096557600080fd5b919050565b6000602080838503121561097d57600080fd5b82516001600160401b038082111561099457600080fd5b818501915085601f8301126109a857600080fd5b8151818111156109ba576109ba6108d8565b8060051b604051601f19603f830116810181811085821117156109df576109df6108d8565b6040529182528482019250838101850191888311156109fd57600080fd5b938501935b82851015610a2257610a138561094e565b84529385019392850192610a02565b98975050505050505050565b6001600160d81b03828116828216039080821115610a4e57610a4e6108af565b5092915050565b634e487b7160e01b600052601260045260246000fd5b60006001600160d81b0383811680610a8557610a85610a55565b92169190910492915050565b808202811582820484141761045d5761045d6108af565b600082610ab757610ab7610a55565b50049056fea2646970667358221220c44b75664d1cf389f4d828b604c831c6f80194a7ec2688b8125bffeecc82f2b864736f6c63430008110033";
135
+
136
+ type PendlePtAssetOracleConstructorParams =
137
+ | [signer?: Signer]
138
+ | ConstructorParameters<typeof ContractFactory>;
139
+
140
+ const isSuperArgs = (
141
+ xs: PendlePtAssetOracleConstructorParams
142
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
143
+
144
+ export class PendlePtAssetOracle__factory extends ContractFactory {
145
+ constructor(...args: PendlePtAssetOracleConstructorParams) {
146
+ if (isSuperArgs(args)) {
147
+ super(...args);
148
+ } else {
149
+ super(_abi, _bytecode, args[0]);
150
+ }
151
+ this.contractName = "PendlePtAssetOracle";
152
+ }
153
+
154
+ deploy(
155
+ _market: string,
156
+ _twapDuration: BigNumberish,
157
+ _numSlotRequired: BigNumberish,
158
+ overrides?: Overrides & { from?: string | Promise<string> }
159
+ ): Promise<PendlePtAssetOracle> {
160
+ return super.deploy(
161
+ _market,
162
+ _twapDuration,
163
+ _numSlotRequired,
164
+ overrides || {}
165
+ ) as Promise<PendlePtAssetOracle>;
166
+ }
167
+ getDeployTransaction(
168
+ _market: string,
169
+ _twapDuration: BigNumberish,
170
+ _numSlotRequired: BigNumberish,
171
+ overrides?: Overrides & { from?: string | Promise<string> }
172
+ ): TransactionRequest {
173
+ return super.getDeployTransaction(
174
+ _market,
175
+ _twapDuration,
176
+ _numSlotRequired,
177
+ overrides || {}
178
+ );
179
+ }
180
+ attach(address: string): PendlePtAssetOracle {
181
+ return super.attach(address) as PendlePtAssetOracle;
182
+ }
183
+ connect(signer: Signer): PendlePtAssetOracle__factory {
184
+ return super.connect(signer) as PendlePtAssetOracle__factory;
185
+ }
186
+ static readonly contractName: "PendlePtAssetOracle";
187
+ public readonly contractName: "PendlePtAssetOracle";
188
+ static readonly bytecode = _bytecode;
189
+ static readonly abi = _abi;
190
+ static createInterface(): PendlePtAssetOracleInterface {
191
+ return new utils.Interface(_abi) as PendlePtAssetOracleInterface;
192
+ }
193
+ static connect(
194
+ address: string,
195
+ signerOrProvider: Signer | Provider
196
+ ): PendlePtAssetOracle {
197
+ return new Contract(address, _abi, signerOrProvider) as PendlePtAssetOracle;
198
+ }
199
+ }