@pendle/core-v2 0.19.0-testnet → 0.20.1-testnet

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 (51) hide show
  1. package/build/artifacts/contracts/core/Market/PendleGauge.sol/PendleGauge.dbg.json +1 -1
  2. package/build/artifacts/contracts/core/RewardManager/RewardManager.sol/RewardManager.dbg.json +1 -1
  3. package/build/artifacts/contracts/core/RewardManager/RewardManagerAbstract.sol/RewardManagerAbstract.dbg.json +1 -1
  4. package/build/artifacts/contracts/core/libraries/ArrayLib.sol/ArrayLib.dbg.json +1 -1
  5. package/build/artifacts/contracts/interfaces/ConvexCurve/IRewards.sol/IRewards.dbg.json +1 -1
  6. package/deployments/43113-helper.json +1 -1
  7. package/deployments/80001-helper.json +3 -0
  8. package/package.json +1 -1
  9. package/typechain-types/ComposableStablePreview.ts +217 -0
  10. package/typechain-types/IBalancerFees.ts +89 -0
  11. package/typechain-types/IBalancerStablePreview.ts +217 -0
  12. package/typechain-types/IBasePool.ts +482 -0
  13. package/typechain-types/IComposableStable.ts +730 -0
  14. package/typechain-types/IGauge.ts +160 -0
  15. package/typechain-types/ILiquidityGaugeFactory.ts +99 -0
  16. package/typechain-types/IMetaStablePool.ts +619 -0
  17. package/typechain-types/IRateProvider.ts +81 -0
  18. package/typechain-types/IVault.ts +410 -0
  19. package/typechain-types/MetaStableMath.ts +113 -0
  20. package/typechain-types/MetaStablePreview.ts +501 -0
  21. package/typechain-types/Multicall2.ts +437 -0
  22. package/typechain-types/PendleAura3EthSY.ts +1639 -0
  23. package/typechain-types/PendleAuraBalancerStableLPSY.ts +1523 -0
  24. package/typechain-types/PendleAuraCbethWstethSY.ts +1626 -0
  25. package/typechain-types/PendleAuraWethRethSY.ts +1549 -0
  26. package/typechain-types/PendleAuraWethWstethSY.ts +1562 -0
  27. package/typechain-types/StEthHelper.ts +107 -0
  28. package/typechain-types/StablePreviewBase.ts +217 -0
  29. package/typechain-types/factories/ComposableStablePreview__factory.ts +190 -0
  30. package/typechain-types/factories/IBalancerFees__factory.ts +36 -0
  31. package/typechain-types/factories/IBalancerStablePreview__factory.ts +152 -0
  32. package/typechain-types/factories/IBasePool__factory.ts +340 -0
  33. package/typechain-types/factories/IComposableStable__factory.ts +482 -0
  34. package/typechain-types/factories/IGauge__factory.ts +70 -0
  35. package/typechain-types/factories/ILiquidityGaugeFactory__factory.ts +49 -0
  36. package/typechain-types/factories/IMetaStablePool__factory.ts +413 -0
  37. package/typechain-types/factories/IRateProvider__factory.ts +36 -0
  38. package/typechain-types/factories/IVault__factory.ts +287 -0
  39. package/typechain-types/factories/MetaStableMath__factory.ts +93 -0
  40. package/typechain-types/factories/MetaStablePreview__factory.ts +375 -0
  41. package/typechain-types/factories/Multicall2__factory.ts +372 -0
  42. package/typechain-types/factories/PendleAura3EthSY__factory.ts +1365 -0
  43. package/typechain-types/factories/PendleAuraBalancerStableLPSY__factory.ts +1190 -0
  44. package/typechain-types/factories/PendleAuraCbethWstethSY__factory.ts +1356 -0
  45. package/typechain-types/factories/PendleAuraWethRethSY__factory.ts +1291 -0
  46. package/typechain-types/factories/PendleAuraWethWstethSY__factory.ts +1304 -0
  47. package/typechain-types/factories/StEthHelper__factory.ts +62 -0
  48. package/typechain-types/factories/StablePreviewBase__factory.ts +148 -0
  49. package/typechain-types/hardhat.d.ts +180 -9
  50. package/typechain-types/index.ts +40 -2
  51. package/deployments/1-markets/APE-JUNE-29.json +0 -8
@@ -0,0 +1,107 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BytesLike,
8
+ CallOverrides,
9
+ PopulatedTransaction,
10
+ Signer,
11
+ utils,
12
+ } from "ethers";
13
+ import { FunctionFragment, Result } from "@ethersproject/abi";
14
+ import { Listener, Provider } from "@ethersproject/providers";
15
+ import type {
16
+ TypedEventFilter,
17
+ TypedEvent,
18
+ TypedListener,
19
+ OnEvent,
20
+ } from "./common";
21
+
22
+ export interface StEthHelperInterface extends utils.Interface {
23
+ contractName: "StEthHelper";
24
+ functions: {
25
+ "STETH()": FunctionFragment;
26
+ "WETH()": FunctionFragment;
27
+ "WSTETH()": FunctionFragment;
28
+ };
29
+
30
+ encodeFunctionData(functionFragment: "STETH", values?: undefined): string;
31
+ encodeFunctionData(functionFragment: "WETH", values?: undefined): string;
32
+ encodeFunctionData(functionFragment: "WSTETH", values?: undefined): string;
33
+
34
+ decodeFunctionResult(functionFragment: "STETH", data: BytesLike): Result;
35
+ decodeFunctionResult(functionFragment: "WETH", data: BytesLike): Result;
36
+ decodeFunctionResult(functionFragment: "WSTETH", data: BytesLike): Result;
37
+
38
+ events: {};
39
+ }
40
+
41
+ export interface StEthHelper extends BaseContract {
42
+ contractName: "StEthHelper";
43
+ connect(signerOrProvider: Signer | Provider | string): this;
44
+ attach(addressOrName: string): this;
45
+ deployed(): Promise<this>;
46
+
47
+ interface: StEthHelperInterface;
48
+
49
+ queryFilter<TEvent extends TypedEvent>(
50
+ event: TypedEventFilter<TEvent>,
51
+ fromBlockOrBlockhash?: string | number | undefined,
52
+ toBlock?: string | number | undefined
53
+ ): Promise<Array<TEvent>>;
54
+
55
+ listeners<TEvent extends TypedEvent>(
56
+ eventFilter?: TypedEventFilter<TEvent>
57
+ ): Array<TypedListener<TEvent>>;
58
+ listeners(eventName?: string): Array<Listener>;
59
+ removeAllListeners<TEvent extends TypedEvent>(
60
+ eventFilter: TypedEventFilter<TEvent>
61
+ ): this;
62
+ removeAllListeners(eventName?: string): this;
63
+ off: OnEvent<this>;
64
+ on: OnEvent<this>;
65
+ once: OnEvent<this>;
66
+ removeListener: OnEvent<this>;
67
+
68
+ functions: {
69
+ STETH(overrides?: CallOverrides): Promise<[string]>;
70
+
71
+ WETH(overrides?: CallOverrides): Promise<[string]>;
72
+
73
+ WSTETH(overrides?: CallOverrides): Promise<[string]>;
74
+ };
75
+
76
+ STETH(overrides?: CallOverrides): Promise<string>;
77
+
78
+ WETH(overrides?: CallOverrides): Promise<string>;
79
+
80
+ WSTETH(overrides?: CallOverrides): Promise<string>;
81
+
82
+ callStatic: {
83
+ STETH(overrides?: CallOverrides): Promise<string>;
84
+
85
+ WETH(overrides?: CallOverrides): Promise<string>;
86
+
87
+ WSTETH(overrides?: CallOverrides): Promise<string>;
88
+ };
89
+
90
+ filters: {};
91
+
92
+ estimateGas: {
93
+ STETH(overrides?: CallOverrides): Promise<BigNumber>;
94
+
95
+ WETH(overrides?: CallOverrides): Promise<BigNumber>;
96
+
97
+ WSTETH(overrides?: CallOverrides): Promise<BigNumber>;
98
+ };
99
+
100
+ populateTransaction: {
101
+ STETH(overrides?: CallOverrides): Promise<PopulatedTransaction>;
102
+
103
+ WETH(overrides?: CallOverrides): Promise<PopulatedTransaction>;
104
+
105
+ WSTETH(overrides?: CallOverrides): Promise<PopulatedTransaction>;
106
+ };
107
+ }
@@ -0,0 +1,217 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ PopulatedTransaction,
11
+ Signer,
12
+ utils,
13
+ } from "ethers";
14
+ import { FunctionFragment, Result } from "@ethersproject/abi";
15
+ import { Listener, Provider } from "@ethersproject/providers";
16
+ import type {
17
+ TypedEventFilter,
18
+ TypedEvent,
19
+ TypedListener,
20
+ OnEvent,
21
+ } from "./common";
22
+
23
+ export declare namespace IVault {
24
+ export type ExitPoolRequestStruct = {
25
+ assets: string[];
26
+ minAmountsOut: BigNumberish[];
27
+ userData: BytesLike;
28
+ toInternalBalance: boolean;
29
+ };
30
+
31
+ export type ExitPoolRequestStructOutput = [
32
+ string[],
33
+ BigNumber[],
34
+ string,
35
+ boolean
36
+ ] & {
37
+ assets: string[];
38
+ minAmountsOut: BigNumber[];
39
+ userData: string;
40
+ toInternalBalance: boolean;
41
+ };
42
+
43
+ export type JoinPoolRequestStruct = {
44
+ assets: string[];
45
+ maxAmountsIn: BigNumberish[];
46
+ userData: BytesLike;
47
+ fromInternalBalance: boolean;
48
+ };
49
+
50
+ export type JoinPoolRequestStructOutput = [
51
+ string[],
52
+ BigNumber[],
53
+ string,
54
+ boolean
55
+ ] & {
56
+ assets: string[];
57
+ maxAmountsIn: BigNumber[];
58
+ userData: string;
59
+ fromInternalBalance: boolean;
60
+ };
61
+ }
62
+
63
+ export interface StablePreviewBaseInterface extends utils.Interface {
64
+ contractName: "StablePreviewBase";
65
+ functions: {
66
+ "exitPoolPreview(bytes32,address,address,(address[],uint256[],bytes,bool),bytes)": FunctionFragment;
67
+ "joinPoolPreview(bytes32,address,address,(address[],uint256[],bytes,bool),bytes)": FunctionFragment;
68
+ };
69
+
70
+ encodeFunctionData(
71
+ functionFragment: "exitPoolPreview",
72
+ values: [BytesLike, string, string, IVault.ExitPoolRequestStruct, BytesLike]
73
+ ): string;
74
+ encodeFunctionData(
75
+ functionFragment: "joinPoolPreview",
76
+ values: [BytesLike, string, string, IVault.JoinPoolRequestStruct, BytesLike]
77
+ ): string;
78
+
79
+ decodeFunctionResult(
80
+ functionFragment: "exitPoolPreview",
81
+ data: BytesLike
82
+ ): Result;
83
+ decodeFunctionResult(
84
+ functionFragment: "joinPoolPreview",
85
+ data: BytesLike
86
+ ): Result;
87
+
88
+ events: {};
89
+ }
90
+
91
+ export interface StablePreviewBase extends BaseContract {
92
+ contractName: "StablePreviewBase";
93
+ connect(signerOrProvider: Signer | Provider | string): this;
94
+ attach(addressOrName: string): this;
95
+ deployed(): Promise<this>;
96
+
97
+ interface: StablePreviewBaseInterface;
98
+
99
+ queryFilter<TEvent extends TypedEvent>(
100
+ event: TypedEventFilter<TEvent>,
101
+ fromBlockOrBlockhash?: string | number | undefined,
102
+ toBlock?: string | number | undefined
103
+ ): Promise<Array<TEvent>>;
104
+
105
+ listeners<TEvent extends TypedEvent>(
106
+ eventFilter?: TypedEventFilter<TEvent>
107
+ ): Array<TypedListener<TEvent>>;
108
+ listeners(eventName?: string): Array<Listener>;
109
+ removeAllListeners<TEvent extends TypedEvent>(
110
+ eventFilter: TypedEventFilter<TEvent>
111
+ ): this;
112
+ removeAllListeners(eventName?: string): this;
113
+ off: OnEvent<this>;
114
+ on: OnEvent<this>;
115
+ once: OnEvent<this>;
116
+ removeListener: OnEvent<this>;
117
+
118
+ functions: {
119
+ exitPoolPreview(
120
+ poolId: BytesLike,
121
+ sender: string,
122
+ recipient: string,
123
+ request: IVault.ExitPoolRequestStruct,
124
+ data: BytesLike,
125
+ overrides?: CallOverrides
126
+ ): Promise<[BigNumber] & { amountTokenOut: BigNumber }>;
127
+
128
+ joinPoolPreview(
129
+ poolId: BytesLike,
130
+ sender: string,
131
+ recipient: string,
132
+ request: IVault.JoinPoolRequestStruct,
133
+ data: BytesLike,
134
+ overrides?: CallOverrides
135
+ ): Promise<[BigNumber] & { amountBptOut: BigNumber }>;
136
+ };
137
+
138
+ exitPoolPreview(
139
+ poolId: BytesLike,
140
+ sender: string,
141
+ recipient: string,
142
+ request: IVault.ExitPoolRequestStruct,
143
+ data: BytesLike,
144
+ overrides?: CallOverrides
145
+ ): Promise<BigNumber>;
146
+
147
+ joinPoolPreview(
148
+ poolId: BytesLike,
149
+ sender: string,
150
+ recipient: string,
151
+ request: IVault.JoinPoolRequestStruct,
152
+ data: BytesLike,
153
+ overrides?: CallOverrides
154
+ ): Promise<BigNumber>;
155
+
156
+ callStatic: {
157
+ exitPoolPreview(
158
+ poolId: BytesLike,
159
+ sender: string,
160
+ recipient: string,
161
+ request: IVault.ExitPoolRequestStruct,
162
+ data: BytesLike,
163
+ overrides?: CallOverrides
164
+ ): Promise<BigNumber>;
165
+
166
+ joinPoolPreview(
167
+ poolId: BytesLike,
168
+ sender: string,
169
+ recipient: string,
170
+ request: IVault.JoinPoolRequestStruct,
171
+ data: BytesLike,
172
+ overrides?: CallOverrides
173
+ ): Promise<BigNumber>;
174
+ };
175
+
176
+ filters: {};
177
+
178
+ estimateGas: {
179
+ exitPoolPreview(
180
+ poolId: BytesLike,
181
+ sender: string,
182
+ recipient: string,
183
+ request: IVault.ExitPoolRequestStruct,
184
+ data: BytesLike,
185
+ overrides?: CallOverrides
186
+ ): Promise<BigNumber>;
187
+
188
+ joinPoolPreview(
189
+ poolId: BytesLike,
190
+ sender: string,
191
+ recipient: string,
192
+ request: IVault.JoinPoolRequestStruct,
193
+ data: BytesLike,
194
+ overrides?: CallOverrides
195
+ ): Promise<BigNumber>;
196
+ };
197
+
198
+ populateTransaction: {
199
+ exitPoolPreview(
200
+ poolId: BytesLike,
201
+ sender: string,
202
+ recipient: string,
203
+ request: IVault.ExitPoolRequestStruct,
204
+ data: BytesLike,
205
+ overrides?: CallOverrides
206
+ ): Promise<PopulatedTransaction>;
207
+
208
+ joinPoolPreview(
209
+ poolId: BytesLike,
210
+ sender: string,
211
+ recipient: string,
212
+ request: IVault.JoinPoolRequestStruct,
213
+ data: BytesLike,
214
+ overrides?: CallOverrides
215
+ ): Promise<PopulatedTransaction>;
216
+ };
217
+ }
@@ -0,0 +1,190 @@
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
+ ComposableStablePreview,
8
+ ComposableStablePreviewInterface,
9
+ } from "../ComposableStablePreview";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "bytes32",
16
+ name: "poolId",
17
+ type: "bytes32",
18
+ },
19
+ {
20
+ internalType: "address",
21
+ name: "sender",
22
+ type: "address",
23
+ },
24
+ {
25
+ internalType: "address",
26
+ name: "recipient",
27
+ type: "address",
28
+ },
29
+ {
30
+ components: [
31
+ {
32
+ internalType: "address[]",
33
+ name: "assets",
34
+ type: "address[]",
35
+ },
36
+ {
37
+ internalType: "uint256[]",
38
+ name: "minAmountsOut",
39
+ type: "uint256[]",
40
+ },
41
+ {
42
+ internalType: "bytes",
43
+ name: "userData",
44
+ type: "bytes",
45
+ },
46
+ {
47
+ internalType: "bool",
48
+ name: "toInternalBalance",
49
+ type: "bool",
50
+ },
51
+ ],
52
+ internalType: "struct IVault.ExitPoolRequest",
53
+ name: "request",
54
+ type: "tuple",
55
+ },
56
+ {
57
+ internalType: "bytes",
58
+ name: "data",
59
+ type: "bytes",
60
+ },
61
+ ],
62
+ name: "exitPoolPreview",
63
+ outputs: [
64
+ {
65
+ internalType: "uint256",
66
+ name: "amountTokenOut",
67
+ type: "uint256",
68
+ },
69
+ ],
70
+ stateMutability: "view",
71
+ type: "function",
72
+ },
73
+ {
74
+ inputs: [
75
+ {
76
+ internalType: "bytes32",
77
+ name: "poolId",
78
+ type: "bytes32",
79
+ },
80
+ {
81
+ internalType: "address",
82
+ name: "sender",
83
+ type: "address",
84
+ },
85
+ {
86
+ internalType: "address",
87
+ name: "recipient",
88
+ type: "address",
89
+ },
90
+ {
91
+ components: [
92
+ {
93
+ internalType: "address[]",
94
+ name: "assets",
95
+ type: "address[]",
96
+ },
97
+ {
98
+ internalType: "uint256[]",
99
+ name: "maxAmountsIn",
100
+ type: "uint256[]",
101
+ },
102
+ {
103
+ internalType: "bytes",
104
+ name: "userData",
105
+ type: "bytes",
106
+ },
107
+ {
108
+ internalType: "bool",
109
+ name: "fromInternalBalance",
110
+ type: "bool",
111
+ },
112
+ ],
113
+ internalType: "struct IVault.JoinPoolRequest",
114
+ name: "request",
115
+ type: "tuple",
116
+ },
117
+ {
118
+ internalType: "bytes",
119
+ name: "data",
120
+ type: "bytes",
121
+ },
122
+ ],
123
+ name: "joinPoolPreview",
124
+ outputs: [
125
+ {
126
+ internalType: "uint256",
127
+ name: "amountBptOut",
128
+ type: "uint256",
129
+ },
130
+ ],
131
+ stateMutability: "view",
132
+ type: "function",
133
+ },
134
+ ];
135
+
136
+ const _bytecode =
137
+ "0x608060405234801561001057600080fd5b50612617806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063626117301461003b5780636669506014610060575b600080fd5b61004e610049366004611fe6565b610073565b60405190815260200160405180910390f35b61004e61006e366004611fe6565b610096565b600061008c6001878787610086886100a5565b876100d6565b9695505050505050565b600061008c6000878787610086885b6100d260405180608001604052806060815260200160608152602001606081526020016000151581525090565b5090565b6000806100e68460000151610117565b90506000806100f589846101cf565b915091506101098a8a8a8a8a87878c61025f565b9a9950505050505050505050565b6060600082516001600160401b0381111561013457610134611d43565b60405190808252806020026020018201604052801561015d578160200160208202803683370190505b50905060005b83518110156101c85761018e84828151811061018157610181612078565b60200260200101516102c5565b8282815181106101a0576101a0612078565b6001600160a01b03909216602092830291909101909101526101c1816120a4565b9050610163565b5092915050565b604051631f29a8cd60e31b8152600481018390526060906000908190819073ba12222222228d8ba445958a75a0704d566bf2c89063f94d466890602401600060405180830381865afa158015610229573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102519190810190612118565b909890975095505050505050565b600080896001811115610274576102746121e5565b0361029b5761029488888887876102896102f8565b8b6040015189610375565b90506102b9565b6102b688888887876102ab6102f8565b8b60400151896103d6565b90505b98975050505050505050565b60006001600160a01b038216156102dc57816102f2565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25b92915050565b600073ce88686553686da562ce7cea497ce749da109f9f6001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa15801561034c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037091906121fb565b905090565b6000808280602001905181019061038c91906122f2565b90506000610399826104b2565b905060006103a783836104bd565b90506103b38982610588565b6103c58c8c8c8c8c8c878d8b8b610604565b509c9b505050505050505050505050565b600080828060200190518101906103ed91906122f2565b90506000606060006103fe846104b2565b9050600061040c85836104bd565b90506104188b82610588565b61042a8e8e8e8e8e8e878f8d8b61062a565b9094509250610439838261063d565b60005b83518110156104a057600084828151811061045957610459612078565b6020026020010151111561048e5783818151811061047957610479612078565b602002602001015196505050505050506102b9565b80610498816120a4565b91505061043c565b50505050505098975050505050505050565b60606102f2826106b3565b606060008361010001516001600160401b038111156104de576104de611d43565b604051908082528060200260200182016040528015610507578160200160208202803683370190505b50905060005b84610100015181101561058057610553610527858361075c565b8660400151838151811061053d5761053d612078565b60200260200101516107b790919063ffffffff16565b82828151811061056557610565612078565b6020908102919091010152610579816120a4565b905061050d565b509392505050565b815160005b818110156105fe576105d18482815181106105aa576105aa612078565b60200260200101518483815181106105c4576105c4612078565b60200260200101516107b7565b8482815181106105e3576105e3612078565b60209081029190910101526105f7816120a4565b905061058d565b50505050565b6000606061061760018a888888886107d6565b915091509a509a98505050505050505050565b6000606061061760008a888888886107d6565b815160005b818110156105fe5761068684828151811061065f5761065f612078565b602002602001015184838151811061067957610679612078565b602002602001015161083f565b84828151811061069857610698612078565b60209081029190910101526106ac816120a4565b9050610642565b60608161010001516001600160401b038111156106d2576106d2611d43565b60405190808252806020026020018201604052801561070b57816020015b6106f8611d07565b8152602001906001900390816106f05790505b50905060005b8261010001518110156107565761072881846108a2565b82828151811061073a5761073a612078565b60200260200101819052508061074f906120a4565b9050610711565b50919050565b600082828151811061077057610770612078565b6020026020010151600001516000146107a65782828151811061079557610795612078565b6020026020010151600001516107b0565b670de0b6b3a76400005b9392505050565b6000670de0b6b3a76400006107cc8385612415565b6107b09190612442565b600060606000806000806107eb8b8989610a04565b9350935093509350611d218c61080357610b2c610807565b610b4e5b905061081c848487858f8f8f8863ffffffff16565b909750955061082d8660008b610b61565b95505050505050965096945050505050565b60008160000361086a5760405162461bcd60e51b815260040161086190612464565b60405180910390fd5b8260000361087a575060006102f2565b600061088e670de0b6b3a764000085612415565b905061089a8382612442565b9150506102f2565b6108aa611d07565b8160e001518314806108c357506108c18284610c37565b155b6102f257600082608001516001600160a01b0316637f1260d1846000015186815181106108f2576108f2612078565b60200260200101516040518263ffffffff1660e01b815260040161092591906001600160a01b0391909116815260200190565b608060405180830381865afa158015610942573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610966919061248b565b6020860192909252509083529050428110156101c8578260200151848151811061099257610992612078565b60200260200101516001600160a01b031663679aefce6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fb91906121fb565b82525092915050565b6000606060008060008087608001516001600160a01b0316633c975d516040518163ffffffff1660e01b81526004016040805180830381865afa158015610a4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a7391906124c1565b915091506000806000610a898c86868e8e610c74565b92509250925060008b608001516001600160a01b0316636daccffa6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610ad3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af791906124e5565b505090506000868214610b1357610b0e8285610ccb565b610b15565b825b949e939d50909b5092995090975050505050505050565b60006060610b3e87878a8c8888610e78565b9150915097509795505050505050565b60006060610b3e87878a8c898989610f7b565b606083516001610b71919061251e565b6001600160401b03811115610b8857610b88611d43565b604051908082528060200260200182016040528015610bb1578160200160208202803683370190505b50905060005b8151811015610580578260e001518114610c0657848360e001518210610be757610be2600183612531565b610be9565b815b81518110610bf957610bf9612078565b6020026020010151610c08565b835b828281518110610c1a57610c1a612078565b602090810291909101015280610c2f816120a4565b915050610bb7565b6000806001600160a01b031683602001518381518110610c5957610c59612078565b60200260200101516001600160a01b03161415905092915050565b600060606000806000610c87878b61102b565b91509150600080610c9b838c8c8c8c61106b565b915091506000610cab85846111e2565b9050610cb7818661251e565b9d939c50909a509198505050505050505050565b80516000908190815b81811015610d1257610d08858281518110610cf157610cf1612078565b60200260200101518461120090919063ffffffff16565b9250600101610cd4565b5081600003610d26576000925050506102f2565b600082868302825b60ff811015610e25578260005b86811015610d8257610d78610d50838761120c565b610d738c8481518110610d6557610d65612078565b60200260200101518a61120c565b611235565b9150600101610d3b565b50839450610ddb610dba610db4610d99848a61120c565b610dae610da6888d61120c565b6103e8611235565b90611200565b8661120c565b610d73610dca896001018561120c565b610dae610da66103e889038a61120c565b935084841115610e0357600185850311610dfe57839750505050505050506102f2565b610e1c565b600184860311610e1c57839750505050505050506102f2565b50600101610d2e565b5060405162461bcd60e51b815260206004820152602160248201527f537461626c6520496e76617269616e7420646964206e6f7420636f6e766572676044820152606560f81b6064820152608401610861565b60006060600080610e888661125b565b91509150600087516001600160401b03811115610ea757610ea7611d43565b604051908082528060200260200182016040528015610ed0578160200160208202803683370190505b509050610f4d8883858e8e8b608001516001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4191906121fb565b8f95949392919061127d565b818381518110610f5f57610f5f612078565b6020908102919091010152919a91995090975050505050505050565b600060606000610f8a856113b1565b509050610fa081610f9b86896113c9565b610588565b600061101a88838d8d89608001516001600160a01b03166355c676286040518163ffffffff1660e01b8152600401602060405180830381865afa158015610feb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100f91906121fb565b8e949392919061148f565b9b919a509098505050505050505050565b6000606061105684848660e001518151811061104957611049612078565b6020026020010151611775565b61106085856113c9565b915091509250929050565b600080600080600061107f8a8a89896117e7565b925092509250600088841161109557600061109f565b61109f8985612531565b905060008484116110b15760006110bb565b6110bb8585612531565b60808a0151604051633823200b60e11b8152600060048201819052929350611141916001600160a01b031690637046401690602401602060405180830381865afa15801561110d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113191906121fb565b61113b858761083f565b906107b7565b60808b0151604051633823200b60e11b8152600260048201529192506000916111c2916001600160a01b031690637046401690602401602060405180830381865afa158015611194573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b891906121fb565b61113b858861083f565b90506111ce818361251e565b9e949d50939b505050505050505050505050565b60006107b06111f08361186a565b6111fa85856107b7565b9061083f565b60006107b0828461251e565b600082820283158061122c5750828482816112295761122961242c565b04145b6107b057600080fd5b60008160000361124457600080fd5b8183816112535761125361242c565b049392505050565b600080828060200190518101906112729190612544565b909590945092505050565b60008061129e8461129887611292818b611890565b9061189c565b90611902565b905060006112ae8a8a848b611936565b905060006112de828b8b815181106112c8576112c8612078565b602002602001015161189090919063ffffffff16565b90506000805b8b51811015611323576113198c828151811061130257611302612078565b60200260200101518361120090919063ffffffff16565b91506001016112e4565b506000611352828d8d8151811061133c5761133c612078565b602002602001015161083f90919063ffffffff16565b9050600061135f8261186a565b9050600061136d8583611902565b9050600061137b8683611890565b905061139c61139583670de0b6b3a76400008d90036107b7565b8290611200565b98505050505050505050979650505050505050565b6060600082806020019051810190611272919061257f565b60606000600183516113db9190612531565b6001600160401b038111156113f2576113f2611d43565b60405190808252806020026020018201604052801561141b578160200160208202803683370190505b50905060005b815181101561058057838560e0015182106114465761144182600161251e565b611448565b815b8151811061145857611458612078565b602002602001015182828151811061147257611472612078565b602090810291909101015280611487816120a4565b915050611421565b600080805b87518110156114bc576114b288828151811061130257611302612078565b9150600101611494565b50600086516001600160401b038111156114d8576114d8611d43565b604051908082528060200260200182016040528015611501578160200160208202803683370190505b5090506000805b89518110156115d6576000611529858c848151811061133c5761133c612078565b905061158d8b838151811061154057611540612078565b60200260200101516111fa8c858151811061155d5761155d612078565b60200260200101518e868151811061157757611577612078565b602002602001015161120090919063ffffffff16565b84838151811061159f5761159f612078565b6020026020010181815250506115cb6115c48286858151811061053d5761053d612078565b8490611200565b925050600101611508565b50600089516001600160401b038111156115f2576115f2611d43565b60405190808252806020026020018201604052801561161b578160200160208202803683370190505b50905060005b8a518110156117135760008385838151811061163f5761163f612078565b602002602001015111156116ba57600061167661166486670de0b6b3a7640000611890565b8e858151811061053d5761053d612078565b90506000611690828e86815181106112c8576112c8612078565b90506116b16116aa82670de0b6b3a76400008d90036107b7565b8390611200565b925050506116d7565b8a82815181106116cc576116cc612078565b602002602001015190505b6116ed818d848151811061157757611577612078565b8383815181106116ff576116ff612078565b602090810291909101015250600101611621565b5060006117208c83610ccb565b9050600061172e828a61083f565b9050670de0b6b3a7640000811115611762576117558a670de0b6b3a763ffff1983016107b7565b965050505050505061008c565b5060009c9b505050505050505050505050565b60006107b08284608001516001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117e191906121fb565b90611890565b60008060006118036117fc8860018888611b5d565b8790610ccb565b92508460a0015115611823576118198688610ccb565b9150819050611860565b8460c00151156118415782915061183a8688610ccb565b9050611860565b6118516117fc8860008888611b5d565b915061185d8688610ccb565b90505b9450945094915050565b6000670de0b6b3a764000082106118825760006102f2565b50670de0b6b3a76400000390565b60006107b08284612531565b6000816000036118be5760405162461bcd60e51b815260040161086190612464565b826000036118ce575060006102f2565b60006118e2670de0b6b3a764000085612415565b90508260018203816118f6576118f661242c565b046001019150506102f2565b60008061190f8385612415565b9050806000036119235760009150506102f2565b670de0b6b3a764000060001982016118f6565b60008084518602905060008560008151811061195457611954612078565b60200260200101519050600086518760008151811061197557611975612078565b60200260200101510290506000600190505b87518110156119e7576119c66119c06119b9848b85815181106119ac576119ac612078565b602002602001015161120c565b8a5161120c565b88611235565b91506119dd888281518110610cf157610cf1612078565b9250600101611987565b508685815181106119fa576119fa612078565b6020026020010151820391506000611a12878861120c565b90506000611a49611a37611a2f84611a2a898861120c565b611c8e565b6103e861120c565b8a89815181106119ac576119ac612078565b90506000611a64611a5d611a2f8b89611235565b8690611200565b9050600080611a80611a768686611200565b611a2a8d86611200565b905060005b60ff811015611b0057819250611ab5611aa286610dae858661120c565b611a2a8e6117e188610dae88600261120c565b915082821115611ade57600183830311611ad957509750611b559650505050505050565b611af8565b600182840311611af857509750611b559650505050505050565b600101611a85565b5060405162461bcd60e51b815260206004820152602360248201527f537461626c65206765742062616c616e636520646964206e6f7420636f6e766560448201526272676560e81b6064820152608401610861565b949350505050565b83516060906000816001600160401b03811115611b7c57611b7c611d43565b604051908082528060200260200182016040528015611ba5578160200160208202803683370190505b50905060005b82811015611c835760008660e00151821015611bc75781611bd2565b611bd282600161251e565b9050611bde8782611cca565b80611bf65750878015611bf65750611bf68782610c37565b611c1957888281518110611c0c57611c0c612078565b6020026020010151611c55565b611c55898381518110611c2e57611c2e612078565b6020026020010151878381518110611c4857611c48612078565b6020026020010151611cf2565b838381518110611c6757611c67612078565b602090810291909101015250611c7c816120a4565b9050611bab565b509695505050505050565b600081600003611c9d57600080fd5b82600003611cad575060006102f2565b816001840381611cbf57611cbf61242c565b0460010190506102f2565b600082606001518281518110611ce257611ce2612078565b6020026020010151905092915050565b80516020820151600091906107cc9085612415565b604051806040016040528060008152602001600081525090565b611d296125cb565b565b6001600160a01b0381168114611d4057600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b0381118282101715611d7b57611d7b611d43565b60405290565b60405161012081016001600160401b0381118282101715611d7b57611d7b611d43565b604051601f8201601f191681016001600160401b0381118282101715611dcc57611dcc611d43565b604052919050565b60006001600160401b03821115611ded57611ded611d43565b5060051b60200190565b600082601f830112611e0857600080fd5b81356020611e1d611e1883611dd4565b611da4565b82815260059290921b84018101918181019086841115611e3c57600080fd5b8286015b84811015611c835780358352918301918301611e40565b600082601f830112611e6857600080fd5b81356001600160401b03811115611e8157611e81611d43565b611e94601f8201601f1916602001611da4565b818152846020838601011115611ea957600080fd5b816020850160208301376000918101602001919091529392505050565b8015158114611d4057600080fd5b8035611edf81611ec6565b919050565b600060808284031215611ef657600080fd5b611efe611d59565b905081356001600160401b0380821115611f1757600080fd5b818401915084601f830112611f2b57600080fd5b81356020611f3b611e1883611dd4565b82815260059290921b84018101918181019088841115611f5a57600080fd5b948201945b83861015611f81578535611f7281611d2b565b82529482019490820190611f5f565b86525085810135935082841115611f9757600080fd5b611fa387858801611df7565b90850152506040840135915080821115611fbc57600080fd5b50611fc984828501611e57565b604083015250611fdb60608301611ed4565b606082015292915050565b600080600080600060a08688031215611ffe57600080fd5b85359450602086013561201081611d2b565b9350604086013561202081611d2b565b925060608601356001600160401b038082111561203c57600080fd5b61204889838a01611ee4565b9350608088013591508082111561205e57600080fd5b5061206b88828901611e57565b9150509295509295909350565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120b6576120b661208e565b5060010190565b600082601f8301126120ce57600080fd5b815160206120de611e1883611dd4565b82815260059290921b840181019181810190868411156120fd57600080fd5b8286015b84811015611c835780518352918301918301612101565b60008060006060848603121561212d57600080fd5b83516001600160401b038082111561214457600080fd5b818601915086601f83011261215857600080fd5b81516020612168611e1883611dd4565b82815260059290921b8401810191818101908a84111561218757600080fd5b948201945b838610156121ae57855161219f81611d2b565b8252948201949082019061218c565b918901519197509093505050808211156121c757600080fd5b506121d4868287016120bd565b925050604084015190509250925092565b634e487b7160e01b600052602160045260246000fd5b60006020828403121561220d57600080fd5b5051919050565b8051611edf81611d2b565b600082601f83011261223057600080fd5b81516020612240611e1883611dd4565b82815260059290921b8401810191818101908684111561225f57600080fd5b8286015b84811015611c8357805161227681611d2b565b8352918301918301612263565b8051611edf81611ec6565b600082601f83011261229f57600080fd5b815160206122af611e1883611dd4565b82815260059290921b840181019181810190868411156122ce57600080fd5b8286015b84811015611c835780516122e581611ec6565b83529183019183016122d2565b60006020828403121561230457600080fd5b81516001600160401b038082111561231b57600080fd5b90830190610120828603121561233057600080fd5b612338611d81565b82518281111561234757600080fd5b6123538782860161221f565b82525060208301518281111561236857600080fd5b6123748782860161221f565b60208301525060408301518281111561238c57600080fd5b612398878286016120bd565b6040830152506060830151828111156123b057600080fd5b6123bc8782860161228e565b6060830152506123ce60808401612214565b60808201526123df60a08401612283565b60a08201526123f060c08401612283565b60c082015260e083810151908201526101009283015192810192909252509392505050565b80820281158282048414176102f2576102f261208e565b634e487b7160e01b600052601260045260246000fd5b60008261245f57634e487b7160e01b600052601260045260246000fd5b500490565b6020808252600d908201526c2d32b937903234bb34b9b4b7b760991b604082015260600190565b600080600080608085870312156124a157600080fd5b505082516020840151604085015160609095015191969095509092509050565b600080604083850312156124d457600080fd5b505080516020909101519092909150565b6000806000606084860312156124fa57600080fd5b83519250602084015161250c81611ec6565b80925050604084015190509250925092565b808201808211156102f2576102f261208e565b818103818111156102f2576102f261208e565b60008060006060848603121561255957600080fd5b83516002811061256857600080fd5b602085015160409095015190969495509392505050565b60008060006060848603121561259457600080fd5b8351600381106125a357600080fd5b60208501519093506001600160401b038111156125bf57600080fd5b6121d4868287016120bd565b634e487b7160e01b600052605160045260246000fdfea2646970667358221220f47c7e989a8c121dbce44771a9c8411189ae7186160de2014d9cf8de3762578f64736f6c63430008110033";
138
+
139
+ type ComposableStablePreviewConstructorParams =
140
+ | [signer?: Signer]
141
+ | ConstructorParameters<typeof ContractFactory>;
142
+
143
+ const isSuperArgs = (
144
+ xs: ComposableStablePreviewConstructorParams
145
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
146
+
147
+ export class ComposableStablePreview__factory extends ContractFactory {
148
+ constructor(...args: ComposableStablePreviewConstructorParams) {
149
+ if (isSuperArgs(args)) {
150
+ super(...args);
151
+ } else {
152
+ super(_abi, _bytecode, args[0]);
153
+ }
154
+ this.contractName = "ComposableStablePreview";
155
+ }
156
+
157
+ deploy(
158
+ overrides?: Overrides & { from?: string | Promise<string> }
159
+ ): Promise<ComposableStablePreview> {
160
+ return super.deploy(overrides || {}) as Promise<ComposableStablePreview>;
161
+ }
162
+ getDeployTransaction(
163
+ overrides?: Overrides & { from?: string | Promise<string> }
164
+ ): TransactionRequest {
165
+ return super.getDeployTransaction(overrides || {});
166
+ }
167
+ attach(address: string): ComposableStablePreview {
168
+ return super.attach(address) as ComposableStablePreview;
169
+ }
170
+ connect(signer: Signer): ComposableStablePreview__factory {
171
+ return super.connect(signer) as ComposableStablePreview__factory;
172
+ }
173
+ static readonly contractName: "ComposableStablePreview";
174
+ public readonly contractName: "ComposableStablePreview";
175
+ static readonly bytecode = _bytecode;
176
+ static readonly abi = _abi;
177
+ static createInterface(): ComposableStablePreviewInterface {
178
+ return new utils.Interface(_abi) as ComposableStablePreviewInterface;
179
+ }
180
+ static connect(
181
+ address: string,
182
+ signerOrProvider: Signer | Provider
183
+ ): ComposableStablePreview {
184
+ return new Contract(
185
+ address,
186
+ _abi,
187
+ signerOrProvider
188
+ ) as ComposableStablePreview;
189
+ }
190
+ }
@@ -0,0 +1,36 @@
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 { IBalancerFees, IBalancerFeesInterface } from "../IBalancerFees";
8
+
9
+ const _abi = [
10
+ {
11
+ inputs: [],
12
+ name: "getSwapFeePercentage",
13
+ outputs: [
14
+ {
15
+ internalType: "uint256",
16
+ name: "",
17
+ type: "uint256",
18
+ },
19
+ ],
20
+ stateMutability: "view",
21
+ type: "function",
22
+ },
23
+ ];
24
+
25
+ export class IBalancerFees__factory {
26
+ static readonly abi = _abi;
27
+ static createInterface(): IBalancerFeesInterface {
28
+ return new utils.Interface(_abi) as IBalancerFeesInterface;
29
+ }
30
+ static connect(
31
+ address: string,
32
+ signerOrProvider: Signer | Provider
33
+ ): IBalancerFees {
34
+ return new Contract(address, _abi, signerOrProvider) as IBalancerFees;
35
+ }
36
+ }