@typemove/aptos 1.14.0-rc.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/package.json +3 -3
  2. package/dist/esm/account-resource-client.d.ts +0 -28
  3. package/dist/esm/account-resource-client.d.ts.map +0 -1
  4. package/dist/esm/account-resource-client.js +0 -47
  5. package/dist/esm/account-resource-client.js.map +0 -1
  6. package/dist/esm/account-resource-client.test.d.ts +0 -2
  7. package/dist/esm/account-resource-client.test.d.ts.map +0 -1
  8. package/dist/esm/account-resource-client.test.js.map +0 -1
  9. package/dist/esm/aptos-chain-adapter.d.ts +0 -16
  10. package/dist/esm/aptos-chain-adapter.d.ts.map +0 -1
  11. package/dist/esm/aptos-chain-adapter.js +0 -104
  12. package/dist/esm/aptos-chain-adapter.js.map +0 -1
  13. package/dist/esm/builtin/0x1.d.ts +0 -7522
  14. package/dist/esm/builtin/0x1.d.ts.map +0 -1
  15. package/dist/esm/builtin/0x1.js +0 -11632
  16. package/dist/esm/builtin/0x1.js.map +0 -1
  17. package/dist/esm/builtin/0x3.d.ts +0 -1087
  18. package/dist/esm/builtin/0x3.d.ts.map +0 -1
  19. package/dist/esm/builtin/0x3.js +0 -926
  20. package/dist/esm/builtin/0x3.js.map +0 -1
  21. package/dist/esm/builtin/0x4.d.ts +0 -535
  22. package/dist/esm/builtin/0x4.d.ts.map +0 -1
  23. package/dist/esm/builtin/0x4.js +0 -884
  24. package/dist/esm/builtin/0x4.js.map +0 -1
  25. package/dist/esm/builtin/index.d.ts +0 -4
  26. package/dist/esm/builtin/index.d.ts.map +0 -1
  27. package/dist/esm/builtin/index.js +0 -7
  28. package/dist/esm/builtin/index.js.map +0 -1
  29. package/dist/esm/client.test.d.ts +0 -2
  30. package/dist/esm/client.test.d.ts.map +0 -1
  31. package/dist/esm/client.test.js.map +0 -1
  32. package/dist/esm/codegen/codegen.d.ts +0 -18
  33. package/dist/esm/codegen/codegen.d.ts.map +0 -1
  34. package/dist/esm/codegen/codegen.js +0 -161
  35. package/dist/esm/codegen/codegen.js.map +0 -1
  36. package/dist/esm/codegen/index.d.ts +0 -2
  37. package/dist/esm/codegen/index.d.ts.map +0 -1
  38. package/dist/esm/codegen/index.js +0 -2
  39. package/dist/esm/codegen/index.js.map +0 -1
  40. package/dist/esm/codegen/run.d.ts +0 -3
  41. package/dist/esm/codegen/run.d.ts.map +0 -1
  42. package/dist/esm/codegen/run.js.map +0 -1
  43. package/dist/esm/codegen/types.test.d.ts +0 -2
  44. package/dist/esm/codegen/types.test.d.ts.map +0 -1
  45. package/dist/esm/codegen/types.test.js.map +0 -1
  46. package/dist/esm/coder-helpers.d.ts +0 -6
  47. package/dist/esm/coder-helpers.d.ts.map +0 -1
  48. package/dist/esm/coder-helpers.js +0 -8
  49. package/dist/esm/coder-helpers.js.map +0 -1
  50. package/dist/esm/index.d.ts +0 -5
  51. package/dist/esm/index.d.ts.map +0 -1
  52. package/dist/esm/index.js +0 -5
  53. package/dist/esm/index.js.map +0 -1
  54. package/dist/esm/models.d.ts +0 -12
  55. package/dist/esm/models.d.ts.map +0 -1
  56. package/dist/esm/models.js +0 -2
  57. package/dist/esm/models.js.map +0 -1
  58. package/dist/esm/move-coder.d.ts +0 -17
  59. package/dist/esm/move-coder.d.ts.map +0 -1
  60. package/dist/esm/move-coder.js +0 -97
  61. package/dist/esm/move-coder.js.map +0 -1
  62. package/dist/esm/to-internal.d.ts +0 -7
  63. package/dist/esm/to-internal.d.ts.map +0 -1
  64. package/dist/esm/to-internal.js +0 -55
  65. package/dist/esm/to-internal.js.map +0 -1
  66. package/src/abis/0x1.json +0 -43414
  67. package/src/abis/0x3.json +0 -3976
  68. package/src/abis/0x4.json +0 -2844
  69. package/src/account-resource-client.ts +0 -69
  70. package/src/aptos-chain-adapter.ts +0 -132
  71. package/src/builtin/0x1.ts +0 -19976
  72. package/src/builtin/0x3.ts +0 -2083
  73. package/src/builtin/0x4.ts +0 -1503
  74. package/src/builtin/index.ts +0 -6
  75. package/src/codegen/codegen.ts +0 -190
  76. package/src/codegen/index.ts +0 -1
  77. package/src/codegen/run.ts +0 -67
  78. package/src/coder-helpers.ts +0 -15
  79. package/src/index.ts +0 -4
  80. package/src/models.ts +0 -23
  81. package/src/move-coder.ts +0 -124
  82. package/src/tests/abis/0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af.json +0 -3265
  83. package/src/tests/abis/0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.json +0 -637
  84. package/src/tests/abis/0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99.json +0 -1099
  85. package/src/tests/abis/0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615.json +0 -409
  86. package/src/tests/abis/0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.json +0 -219
  87. package/src/tests/abis/0xbd35135844473187163ca197ca93b2ab014370587bb0ed3befff9e902d6bb541.json +0 -3717
  88. package/src/tests/types/0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af.ts +0 -2805
  89. package/src/tests/types/0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.ts +0 -89
  90. package/src/tests/types/0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99.ts +0 -1649
  91. package/src/tests/types/0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615.ts +0 -744
  92. package/src/tests/types/0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.ts +0 -126
  93. package/src/tests/types/0xbd35135844473187163ca197ca93b2ab014370587bb0ed3befff9e902d6bb541.ts +0 -2165
  94. package/src/tests/types/index.ts +0 -9
  95. package/src/to-internal.ts +0 -71
@@ -1,2805 +0,0 @@
1
- /* Autogenerated file. Do not edit manually. */
2
- /* tslint:disable */
3
- /* eslint-disable */
4
-
5
- /* Generated types for 0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af, original address 0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af */
6
-
7
- import { TypeDescriptor, ANY_TYPE } from "@typemove/move";
8
- import { MoveCoder, TypedEventInstance } from "@typemove/aptos";
9
-
10
- import { defaultMoveCoder } from "@typemove/aptos";
11
-
12
- import {
13
- Aptos,
14
- Account as AptosAccount,
15
- MoveAddressType,
16
- PendingTransactionResponse,
17
- InputGenerateTransactionOptions,
18
- MoveStructId,
19
- InputViewFunctionData,
20
- InputViewFunctionJsonData,
21
- } from "@aptos-labs/ts-sdk";
22
-
23
- import * as _0x1 from "@typemove/aptos/builtin/0x1";
24
- import * as _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9 from "./0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.js";
25
-
26
- export namespace fees {
27
- export namespace entry {}
28
- export namespace view {
29
- export async function balance<T0 = any>(
30
- client: Aptos,
31
- request: {
32
- typeArguments: [MoveStructId];
33
- },
34
- version?: bigint,
35
- ): Promise<[bigint]> {
36
- const coder = defaultMoveCoder(client.config);
37
- const data: InputViewFunctionData = {
38
- function:
39
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::fees::balance",
40
- functionArguments: [],
41
- typeArguments: request.typeArguments,
42
- };
43
- const res = await client.view({
44
- payload: data,
45
- options: { ledgerVersion: version },
46
- });
47
- const type = await coder.getMoveFunction(
48
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::fees::balance",
49
- );
50
- return (await coder.decodeArray(res, type.return)) as any;
51
- }
52
- }
53
- }
54
-
55
- export namespace init {
56
- export namespace entry {
57
- export async function initialize(
58
- client: Aptos,
59
- account: AptosAccount,
60
- request: {
61
- typeArguments: [];
62
- functionArguments: [];
63
- },
64
- options?: InputGenerateTransactionOptions,
65
- ): Promise<PendingTransactionResponse> {
66
- const coder = defaultMoveCoder(client.config);
67
- const transaction = await client.transaction.build.simple({
68
- sender: account.accountAddress,
69
- data: {
70
- function:
71
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::init::initialize",
72
- functionArguments: coder.encodeArray(request.functionArguments),
73
- typeArguments: [],
74
- },
75
- options,
76
- });
77
- return await client.signAndSubmitTransaction({
78
- signer: account,
79
- transaction,
80
- });
81
- }
82
- }
83
- export namespace view {}
84
- }
85
-
86
- export namespace package$ {
87
- export interface ResourceSignerCapability {
88
- signer_cap: _0x1.account.SignerCapability;
89
- }
90
-
91
- export namespace ResourceSignerCapability {
92
- export const TYPE_QNAME =
93
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::package::ResourceSignerCapability";
94
-
95
- const TYPE = new TypeDescriptor<ResourceSignerCapability>(
96
- ResourceSignerCapability.TYPE_QNAME,
97
- );
98
-
99
- export function type(): TypeDescriptor<ResourceSignerCapability> {
100
- return TYPE.apply();
101
- }
102
- }
103
-
104
- export namespace entry {
105
- export async function publishPackage(
106
- client: Aptos,
107
- account: AptosAccount,
108
- request: {
109
- typeArguments: [];
110
- functionArguments: [string, string[]];
111
- },
112
- options?: InputGenerateTransactionOptions,
113
- ): Promise<PendingTransactionResponse> {
114
- const coder = defaultMoveCoder(client.config);
115
- const transaction = await client.transaction.build.simple({
116
- sender: account.accountAddress,
117
- data: {
118
- function:
119
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::package::publish_package",
120
- functionArguments: coder.encodeArray(request.functionArguments),
121
- typeArguments: [],
122
- },
123
- options,
124
- });
125
- return await client.signAndSubmitTransaction({
126
- signer: account,
127
- transaction,
128
- });
129
- }
130
- }
131
- export namespace view {}
132
- }
133
-
134
- export namespace base_pool {
135
- export interface BasePoolParamChangeEvent {
136
- name: string;
137
- prev_value: bigint;
138
- new_value: bigint;
139
- }
140
-
141
- export namespace BasePoolParamChangeEvent {
142
- export const TYPE_QNAME =
143
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::BasePoolParamChangeEvent";
144
-
145
- const TYPE = new TypeDescriptor<BasePoolParamChangeEvent>(
146
- BasePoolParamChangeEvent.TYPE_QNAME,
147
- );
148
-
149
- export function type(): TypeDescriptor<BasePoolParamChangeEvent> {
150
- return TYPE.apply();
151
- }
152
- }
153
-
154
- export type BasePoolParamChangeEventInstance =
155
- TypedEventInstance<BasePoolParamChangeEvent> & {
156
- data_decoded: BasePoolParamChangeEvent;
157
- type_arguments: [];
158
- };
159
-
160
- export interface BasePoolParams {
161
- swap_fee_protocol_allocation_ratio: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
162
- param_change_events: _0x1.event.EventHandle<base_pool.BasePoolParamChangeEvent>;
163
- }
164
-
165
- export namespace BasePoolParams {
166
- export const TYPE_QNAME =
167
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::BasePoolParams";
168
-
169
- const TYPE = new TypeDescriptor<BasePoolParams>(BasePoolParams.TYPE_QNAME);
170
-
171
- export function type(): TypeDescriptor<BasePoolParams> {
172
- return TYPE.apply();
173
- }
174
- }
175
-
176
- export interface Null {
177
- dummy_field: boolean;
178
- }
179
-
180
- export namespace Null {
181
- export const TYPE_QNAME =
182
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::Null";
183
-
184
- const TYPE = new TypeDescriptor<Null>(Null.TYPE_QNAME);
185
-
186
- export function type(): TypeDescriptor<Null> {
187
- return TYPE.apply();
188
- }
189
- }
190
-
191
- export namespace entry {
192
- export async function setSwapFeeProtocolAllocationBps(
193
- client: Aptos,
194
- account: AptosAccount,
195
- request: {
196
- typeArguments: [];
197
- functionArguments: [bigint];
198
- },
199
- options?: InputGenerateTransactionOptions,
200
- ): Promise<PendingTransactionResponse> {
201
- const coder = defaultMoveCoder(client.config);
202
- const transaction = await client.transaction.build.simple({
203
- sender: account.accountAddress,
204
- data: {
205
- function:
206
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::set_swap_fee_protocol_allocation_bps",
207
- functionArguments: coder.encodeArray(request.functionArguments),
208
- typeArguments: [],
209
- },
210
- options,
211
- });
212
- return await client.signAndSubmitTransaction({
213
- signer: account,
214
- transaction,
215
- });
216
- }
217
- }
218
- export namespace view {
219
- export async function maxSupportedDecimals(
220
- client: Aptos,
221
-
222
- version?: bigint,
223
- ): Promise<[number]> {
224
- const coder = defaultMoveCoder(client.config);
225
- const data: InputViewFunctionData = {
226
- function:
227
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::max_supported_decimals",
228
- functionArguments: [],
229
- typeArguments: [],
230
- };
231
- const res = await client.view({
232
- payload: data,
233
- options: { ledgerVersion: version },
234
- });
235
- const type = await coder.getMoveFunction(
236
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::max_supported_decimals",
237
- );
238
- return (await coder.decodeArray(res, type.return)) as any;
239
- }
240
- export async function poolTokenSupply<T0 = any>(
241
- client: Aptos,
242
- request: {
243
- typeArguments: [MoveStructId];
244
- },
245
- version?: bigint,
246
- ): Promise<[bigint]> {
247
- const coder = defaultMoveCoder(client.config);
248
- const data: InputViewFunctionData = {
249
- function:
250
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::pool_token_supply",
251
- functionArguments: [],
252
- typeArguments: request.typeArguments,
253
- };
254
- const res = await client.view({
255
- payload: data,
256
- options: { ledgerVersion: version },
257
- });
258
- const type = await coder.getMoveFunction(
259
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::pool_token_supply",
260
- );
261
- return (await coder.decodeArray(res, type.return)) as any;
262
- }
263
-
264
- export async function swapFeeProtocolAllocationRatio(
265
- client: Aptos,
266
-
267
- version?: bigint,
268
- ): Promise<
269
- [
270
- _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
271
- ]
272
- > {
273
- const coder = defaultMoveCoder(client.config);
274
- const data: InputViewFunctionData = {
275
- function:
276
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::swap_fee_protocol_allocation_ratio",
277
- functionArguments: [],
278
- typeArguments: [],
279
- };
280
- const res = await client.view({
281
- payload: data,
282
- options: { ledgerVersion: version },
283
- });
284
- const type = await coder.getMoveFunction(
285
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::swap_fee_protocol_allocation_ratio",
286
- );
287
- return (await coder.decodeArray(res, type.return)) as any;
288
- }
289
- }
290
- }
291
-
292
- export namespace coin_helper {
293
- export namespace entry {}
294
- export namespace view {}
295
- }
296
-
297
- export namespace stable_pool {
298
- export interface AddLiquidityEvent<T0, T1, T2, T3> {
299
- amount_0: bigint;
300
- amount_1: bigint;
301
- amount_2: bigint;
302
- amount_3: bigint;
303
- minted_lp_coin_amount: bigint;
304
- }
305
-
306
- export namespace AddLiquidityEvent {
307
- export const TYPE_QNAME =
308
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::AddLiquidityEvent";
309
-
310
- const TYPE = new TypeDescriptor<AddLiquidityEvent<any, any, any, any>>(
311
- AddLiquidityEvent.TYPE_QNAME,
312
- );
313
-
314
- export function type<T0, T1, T2, T3>(
315
- arg0: TypeDescriptor<T0> = ANY_TYPE,
316
- arg1: TypeDescriptor<T1> = ANY_TYPE,
317
- arg2: TypeDescriptor<T2> = ANY_TYPE,
318
- arg3: TypeDescriptor<T3> = ANY_TYPE,
319
- ): TypeDescriptor<AddLiquidityEvent<T0, T1, T2, T3>> {
320
- return TYPE.apply(arg0, arg1, arg2, arg3);
321
- }
322
- }
323
-
324
- export type AddLiquidityEventInstance = TypedEventInstance<
325
- AddLiquidityEvent<any, any, any, any>
326
- > & {
327
- data_decoded: AddLiquidityEvent<any, any, any, any>;
328
- type_arguments: [string, string, string, string];
329
- };
330
-
331
- export interface Flashloan<T0, T1, T2, T3> {
332
- amount_0: bigint;
333
- amount_1: bigint;
334
- amount_2: bigint;
335
- amount_3: bigint;
336
- }
337
-
338
- export namespace Flashloan {
339
- export const TYPE_QNAME =
340
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::Flashloan";
341
-
342
- const TYPE = new TypeDescriptor<Flashloan<any, any, any, any>>(
343
- Flashloan.TYPE_QNAME,
344
- );
345
-
346
- export function type<T0, T1, T2, T3>(
347
- arg0: TypeDescriptor<T0> = ANY_TYPE,
348
- arg1: TypeDescriptor<T1> = ANY_TYPE,
349
- arg2: TypeDescriptor<T2> = ANY_TYPE,
350
- arg3: TypeDescriptor<T3> = ANY_TYPE,
351
- ): TypeDescriptor<Flashloan<T0, T1, T2, T3>> {
352
- return TYPE.apply(arg0, arg1, arg2, arg3);
353
- }
354
- }
355
-
356
- export interface FlashloanEvent<T0, T1, T2, T3> {
357
- amount_0: bigint;
358
- amount_1: bigint;
359
- amount_2: bigint;
360
- amount_3: bigint;
361
- }
362
-
363
- export namespace FlashloanEvent {
364
- export const TYPE_QNAME =
365
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::FlashloanEvent";
366
-
367
- const TYPE = new TypeDescriptor<FlashloanEvent<any, any, any, any>>(
368
- FlashloanEvent.TYPE_QNAME,
369
- );
370
-
371
- export function type<T0, T1, T2, T3>(
372
- arg0: TypeDescriptor<T0> = ANY_TYPE,
373
- arg1: TypeDescriptor<T1> = ANY_TYPE,
374
- arg2: TypeDescriptor<T2> = ANY_TYPE,
375
- arg3: TypeDescriptor<T3> = ANY_TYPE,
376
- ): TypeDescriptor<FlashloanEvent<T0, T1, T2, T3>> {
377
- return TYPE.apply(arg0, arg1, arg2, arg3);
378
- }
379
- }
380
-
381
- export type FlashloanEventInstance = TypedEventInstance<
382
- FlashloanEvent<any, any, any, any>
383
- > & {
384
- data_decoded: FlashloanEvent<any, any, any, any>;
385
- type_arguments: [string, string, string, string];
386
- };
387
-
388
- export interface FlashloanHelper<T0, T1, T2, T3> {
389
- locked: boolean;
390
- flashloan_fee_bps: bigint;
391
- flashloan_events: _0x1.event.EventHandle<
392
- stable_pool.FlashloanEvent<T0, T1, T2, T3>
393
- >;
394
- }
395
-
396
- export namespace FlashloanHelper {
397
- export const TYPE_QNAME =
398
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::FlashloanHelper";
399
-
400
- const TYPE = new TypeDescriptor<FlashloanHelper<any, any, any, any>>(
401
- FlashloanHelper.TYPE_QNAME,
402
- );
403
-
404
- export function type<T0, T1, T2, T3>(
405
- arg0: TypeDescriptor<T0> = ANY_TYPE,
406
- arg1: TypeDescriptor<T1> = ANY_TYPE,
407
- arg2: TypeDescriptor<T2> = ANY_TYPE,
408
- arg3: TypeDescriptor<T3> = ANY_TYPE,
409
- ): TypeDescriptor<FlashloanHelper<T0, T1, T2, T3>> {
410
- return TYPE.apply(arg0, arg1, arg2, arg3);
411
- }
412
- }
413
-
414
- export interface RemoveLiquidityEvent<T0, T1, T2, T3> {
415
- amount_0: bigint;
416
- amount_1: bigint;
417
- amount_2: bigint;
418
- amount_3: bigint;
419
- burned_lp_coin_amount: bigint;
420
- }
421
-
422
- export namespace RemoveLiquidityEvent {
423
- export const TYPE_QNAME =
424
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::RemoveLiquidityEvent";
425
-
426
- const TYPE = new TypeDescriptor<RemoveLiquidityEvent<any, any, any, any>>(
427
- RemoveLiquidityEvent.TYPE_QNAME,
428
- );
429
-
430
- export function type<T0, T1, T2, T3>(
431
- arg0: TypeDescriptor<T0> = ANY_TYPE,
432
- arg1: TypeDescriptor<T1> = ANY_TYPE,
433
- arg2: TypeDescriptor<T2> = ANY_TYPE,
434
- arg3: TypeDescriptor<T3> = ANY_TYPE,
435
- ): TypeDescriptor<RemoveLiquidityEvent<T0, T1, T2, T3>> {
436
- return TYPE.apply(arg0, arg1, arg2, arg3);
437
- }
438
- }
439
-
440
- export type RemoveLiquidityEventInstance = TypedEventInstance<
441
- RemoveLiquidityEvent<any, any, any, any>
442
- > & {
443
- data_decoded: RemoveLiquidityEvent<any, any, any, any>;
444
- type_arguments: [string, string, string, string];
445
- };
446
-
447
- export interface StablePool<T0, T1, T2, T3> {
448
- asset_0: _0x1.coin.Coin<T0>;
449
- asset_1: _0x1.coin.Coin<T1>;
450
- asset_2: _0x1.coin.Coin<T2>;
451
- asset_3: _0x1.coin.Coin<T3>;
452
- amp_factor: bigint;
453
- precision_multipliers: bigint[];
454
- swap_fee_ratio: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
455
- inverse_negated_swap_fee_ratio: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
456
- pool_token_mint_cap: _0x1.coin.MintCapability<
457
- stable_pool.StablePoolToken<T0, T1, T2, T3>
458
- >;
459
- pool_token_burn_cap: _0x1.coin.BurnCapability<
460
- stable_pool.StablePoolToken<T0, T1, T2, T3>
461
- >;
462
- reserved_lp_coin: _0x1.coin.Coin<
463
- stable_pool.StablePoolToken<T0, T1, T2, T3>
464
- >;
465
- events: stable_pool.StablePoolEvents<T0, T1, T2, T3>;
466
- }
467
-
468
- export namespace StablePool {
469
- export const TYPE_QNAME =
470
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePool";
471
-
472
- const TYPE = new TypeDescriptor<StablePool<any, any, any, any>>(
473
- StablePool.TYPE_QNAME,
474
- );
475
-
476
- export function type<T0, T1, T2, T3>(
477
- arg0: TypeDescriptor<T0> = ANY_TYPE,
478
- arg1: TypeDescriptor<T1> = ANY_TYPE,
479
- arg2: TypeDescriptor<T2> = ANY_TYPE,
480
- arg3: TypeDescriptor<T3> = ANY_TYPE,
481
- ): TypeDescriptor<StablePool<T0, T1, T2, T3>> {
482
- return TYPE.apply(arg0, arg1, arg2, arg3);
483
- }
484
- }
485
-
486
- export interface StablePoolCreationEvent<T0, T1, T2, T3> {
487
- creator: MoveAddressType;
488
- amount_0: bigint;
489
- amount_1: bigint;
490
- amount_2: bigint;
491
- amount_3: bigint;
492
- minted_lp_coin_amount: bigint;
493
- swap_fee_bps: bigint;
494
- }
495
-
496
- export namespace StablePoolCreationEvent {
497
- export const TYPE_QNAME =
498
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolCreationEvent";
499
-
500
- const TYPE = new TypeDescriptor<
501
- StablePoolCreationEvent<any, any, any, any>
502
- >(StablePoolCreationEvent.TYPE_QNAME);
503
-
504
- export function type<T0, T1, T2, T3>(
505
- arg0: TypeDescriptor<T0> = ANY_TYPE,
506
- arg1: TypeDescriptor<T1> = ANY_TYPE,
507
- arg2: TypeDescriptor<T2> = ANY_TYPE,
508
- arg3: TypeDescriptor<T3> = ANY_TYPE,
509
- ): TypeDescriptor<StablePoolCreationEvent<T0, T1, T2, T3>> {
510
- return TYPE.apply(arg0, arg1, arg2, arg3);
511
- }
512
- }
513
-
514
- export type StablePoolCreationEventInstance = TypedEventInstance<
515
- StablePoolCreationEvent<any, any, any, any>
516
- > & {
517
- data_decoded: StablePoolCreationEvent<any, any, any, any>;
518
- type_arguments: [string, string, string, string];
519
- };
520
-
521
- export interface StablePoolEvents<T0, T1, T2, T3> {
522
- pool_creation_events: _0x1.event.EventHandle<
523
- stable_pool.StablePoolCreationEvent<T0, T1, T2, T3>
524
- >;
525
- add_liquidity_events: _0x1.event.EventHandle<
526
- stable_pool.AddLiquidityEvent<T0, T1, T2, T3>
527
- >;
528
- remove_liquidity_events: _0x1.event.EventHandle<
529
- stable_pool.RemoveLiquidityEvent<T0, T1, T2, T3>
530
- >;
531
- swap_events: _0x1.event.EventHandle<stable_pool.SwapEvent<T0, T1, T2, T3>>;
532
- param_change_events: _0x1.event.EventHandle<stable_pool.StablePoolParamChangeEvent>;
533
- }
534
-
535
- export namespace StablePoolEvents {
536
- export const TYPE_QNAME =
537
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolEvents";
538
-
539
- const TYPE = new TypeDescriptor<StablePoolEvents<any, any, any, any>>(
540
- StablePoolEvents.TYPE_QNAME,
541
- );
542
-
543
- export function type<T0, T1, T2, T3>(
544
- arg0: TypeDescriptor<T0> = ANY_TYPE,
545
- arg1: TypeDescriptor<T1> = ANY_TYPE,
546
- arg2: TypeDescriptor<T2> = ANY_TYPE,
547
- arg3: TypeDescriptor<T3> = ANY_TYPE,
548
- ): TypeDescriptor<StablePoolEvents<T0, T1, T2, T3>> {
549
- return TYPE.apply(arg0, arg1, arg2, arg3);
550
- }
551
- }
552
-
553
- export interface StablePoolInfo {
554
- balances: bigint[];
555
- precision_multipliers: bigint[];
556
- amp_factor: bigint;
557
- lp_coin_supply: bigint;
558
- }
559
-
560
- export namespace StablePoolInfo {
561
- export const TYPE_QNAME =
562
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolInfo";
563
-
564
- const TYPE = new TypeDescriptor<StablePoolInfo>(StablePoolInfo.TYPE_QNAME);
565
-
566
- export function type(): TypeDescriptor<StablePoolInfo> {
567
- return TYPE.apply();
568
- }
569
- }
570
-
571
- export interface StablePoolLookup {
572
- name_to_pool: _0x1.table.Table<string, stable_pool.StablePoolInfo>;
573
- id_to_name: _0x1.table.Table<bigint, string>;
574
- next_id: bigint;
575
- }
576
-
577
- export namespace StablePoolLookup {
578
- export const TYPE_QNAME =
579
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolLookup";
580
-
581
- const TYPE = new TypeDescriptor<StablePoolLookup>(
582
- StablePoolLookup.TYPE_QNAME,
583
- );
584
-
585
- export function type(): TypeDescriptor<StablePoolLookup> {
586
- return TYPE.apply();
587
- }
588
- }
589
-
590
- export interface StablePoolParamChangeEvent {
591
- name: string;
592
- prev_value: bigint;
593
- new_value: bigint;
594
- }
595
-
596
- export namespace StablePoolParamChangeEvent {
597
- export const TYPE_QNAME =
598
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolParamChangeEvent";
599
-
600
- const TYPE = new TypeDescriptor<StablePoolParamChangeEvent>(
601
- StablePoolParamChangeEvent.TYPE_QNAME,
602
- );
603
-
604
- export function type(): TypeDescriptor<StablePoolParamChangeEvent> {
605
- return TYPE.apply();
606
- }
607
- }
608
-
609
- export type StablePoolParamChangeEventInstance =
610
- TypedEventInstance<StablePoolParamChangeEvent> & {
611
- data_decoded: StablePoolParamChangeEvent;
612
- type_arguments: [];
613
- };
614
-
615
- export interface StablePoolParams {
616
- default_swap_fee_ratio: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
617
- param_change_events: _0x1.event.EventHandle<stable_pool.StablePoolParamChangeEvent>;
618
- }
619
-
620
- export namespace StablePoolParams {
621
- export const TYPE_QNAME =
622
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolParams";
623
-
624
- const TYPE = new TypeDescriptor<StablePoolParams>(
625
- StablePoolParams.TYPE_QNAME,
626
- );
627
-
628
- export function type(): TypeDescriptor<StablePoolParams> {
629
- return TYPE.apply();
630
- }
631
- }
632
-
633
- export interface StablePoolToken<T0, T1, T2, T3> {
634
- dummy_field: boolean;
635
- }
636
-
637
- export namespace StablePoolToken {
638
- export const TYPE_QNAME =
639
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolToken";
640
-
641
- const TYPE = new TypeDescriptor<StablePoolToken<any, any, any, any>>(
642
- StablePoolToken.TYPE_QNAME,
643
- );
644
-
645
- export function type<T0, T1, T2, T3>(
646
- arg0: TypeDescriptor<T0> = ANY_TYPE,
647
- arg1: TypeDescriptor<T1> = ANY_TYPE,
648
- arg2: TypeDescriptor<T2> = ANY_TYPE,
649
- arg3: TypeDescriptor<T3> = ANY_TYPE,
650
- ): TypeDescriptor<StablePoolToken<T0, T1, T2, T3>> {
651
- return TYPE.apply(arg0, arg1, arg2, arg3);
652
- }
653
- }
654
-
655
- export interface SwapEvent<T0, T1, T2, T3> {
656
- idx_in: bigint;
657
- idx_out: bigint;
658
- amount_in: bigint;
659
- amount_out: bigint;
660
- fee_amount: bigint;
661
- pool_balance_0: bigint;
662
- pool_balance_1: bigint;
663
- pool_balance_2: bigint;
664
- pool_balance_3: bigint;
665
- amp_factor: bigint;
666
- }
667
-
668
- export namespace SwapEvent {
669
- export const TYPE_QNAME =
670
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::SwapEvent";
671
-
672
- const TYPE = new TypeDescriptor<SwapEvent<any, any, any, any>>(
673
- SwapEvent.TYPE_QNAME,
674
- );
675
-
676
- export function type<T0, T1, T2, T3>(
677
- arg0: TypeDescriptor<T0> = ANY_TYPE,
678
- arg1: TypeDescriptor<T1> = ANY_TYPE,
679
- arg2: TypeDescriptor<T2> = ANY_TYPE,
680
- arg3: TypeDescriptor<T3> = ANY_TYPE,
681
- ): TypeDescriptor<SwapEvent<T0, T1, T2, T3>> {
682
- return TYPE.apply(arg0, arg1, arg2, arg3);
683
- }
684
- }
685
-
686
- export type SwapEventInstance = TypedEventInstance<
687
- SwapEvent<any, any, any, any>
688
- > & {
689
- data_decoded: SwapEvent<any, any, any, any>;
690
- type_arguments: [string, string, string, string];
691
- };
692
-
693
- export namespace entry {
694
- export async function setAmpFactor<T0 = any, T1 = any, T2 = any, T3 = any>(
695
- client: Aptos,
696
- account: AptosAccount,
697
- request: {
698
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
699
- functionArguments: [bigint];
700
- },
701
- options?: InputGenerateTransactionOptions,
702
- ): Promise<PendingTransactionResponse> {
703
- const coder = defaultMoveCoder(client.config);
704
- const transaction = await client.transaction.build.simple({
705
- sender: account.accountAddress,
706
- data: {
707
- function:
708
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::set_amp_factor",
709
- functionArguments: coder.encodeArray(request.functionArguments),
710
- typeArguments: request.typeArguments,
711
- },
712
- options,
713
- });
714
- return await client.signAndSubmitTransaction({
715
- signer: account,
716
- transaction,
717
- });
718
- }
719
- export async function setDefaultPoolSwapFeeBps(
720
- client: Aptos,
721
- account: AptosAccount,
722
- request: {
723
- typeArguments: [];
724
- functionArguments: [bigint];
725
- },
726
- options?: InputGenerateTransactionOptions,
727
- ): Promise<PendingTransactionResponse> {
728
- const coder = defaultMoveCoder(client.config);
729
- const transaction = await client.transaction.build.simple({
730
- sender: account.accountAddress,
731
- data: {
732
- function:
733
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::set_default_pool_swap_fee_bps",
734
- functionArguments: coder.encodeArray(request.functionArguments),
735
- typeArguments: [],
736
- },
737
- options,
738
- });
739
- return await client.signAndSubmitTransaction({
740
- signer: account,
741
- transaction,
742
- });
743
- }
744
- export async function setFlashloanFeeBps<
745
- T0 = any,
746
- T1 = any,
747
- T2 = any,
748
- T3 = any,
749
- >(
750
- client: Aptos,
751
- account: AptosAccount,
752
- request: {
753
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
754
- functionArguments: [bigint];
755
- },
756
- options?: InputGenerateTransactionOptions,
757
- ): Promise<PendingTransactionResponse> {
758
- const coder = defaultMoveCoder(client.config);
759
- const transaction = await client.transaction.build.simple({
760
- sender: account.accountAddress,
761
- data: {
762
- function:
763
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::set_flashloan_fee_bps",
764
- functionArguments: coder.encodeArray(request.functionArguments),
765
- typeArguments: request.typeArguments,
766
- },
767
- options,
768
- });
769
- return await client.signAndSubmitTransaction({
770
- signer: account,
771
- transaction,
772
- });
773
- }
774
- export async function setPoolSwapFeeBps<
775
- T0 = any,
776
- T1 = any,
777
- T2 = any,
778
- T3 = any,
779
- >(
780
- client: Aptos,
781
- account: AptosAccount,
782
- request: {
783
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
784
- functionArguments: [bigint];
785
- },
786
- options?: InputGenerateTransactionOptions,
787
- ): Promise<PendingTransactionResponse> {
788
- const coder = defaultMoveCoder(client.config);
789
- const transaction = await client.transaction.build.simple({
790
- sender: account.accountAddress,
791
- data: {
792
- function:
793
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::set_pool_swap_fee_bps",
794
- functionArguments: coder.encodeArray(request.functionArguments),
795
- typeArguments: request.typeArguments,
796
- },
797
- options,
798
- });
799
- return await client.signAndSubmitTransaction({
800
- signer: account,
801
- transaction,
802
- });
803
- }
804
- }
805
- export namespace view {
806
- export async function flashloanFeeBps<
807
- T0 = any,
808
- T1 = any,
809
- T2 = any,
810
- T3 = any,
811
- >(
812
- client: Aptos,
813
- request: {
814
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
815
- },
816
- version?: bigint,
817
- ): Promise<[bigint]> {
818
- const coder = defaultMoveCoder(client.config);
819
- const data: InputViewFunctionData = {
820
- function:
821
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::flashloan_fee_bps",
822
- functionArguments: [],
823
- typeArguments: request.typeArguments,
824
- };
825
- const res = await client.view({
826
- payload: data,
827
- options: { ledgerVersion: version },
828
- });
829
- const type = await coder.getMoveFunction(
830
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::flashloan_fee_bps",
831
- );
832
- return (await coder.decodeArray(res, type.return)) as any;
833
- }
834
- export async function getPrecisionMultipliers<
835
- T0 = any,
836
- T1 = any,
837
- T2 = any,
838
- T3 = any,
839
- >(
840
- client: Aptos,
841
- request: {
842
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
843
- },
844
- version?: bigint,
845
- ): Promise<[bigint[]]> {
846
- const coder = defaultMoveCoder(client.config);
847
- const data: InputViewFunctionData = {
848
- function:
849
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::get_precision_multipliers",
850
- functionArguments: [],
851
- typeArguments: request.typeArguments,
852
- };
853
- const res = await client.view({
854
- payload: data,
855
- options: { ledgerVersion: version },
856
- });
857
- const type = await coder.getMoveFunction(
858
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::get_precision_multipliers",
859
- );
860
- return (await coder.decodeArray(res, type.return)) as any;
861
- }
862
-
863
- export async function lpNameById(
864
- client: Aptos,
865
- request: {
866
- functionArguments: [bigint];
867
- },
868
- version?: bigint,
869
- ): Promise<[string]> {
870
- const coder = defaultMoveCoder(client.config);
871
- const data: InputViewFunctionData = {
872
- function:
873
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::lp_name_by_id",
874
- functionArguments: coder.encodeArray(request.functionArguments),
875
- typeArguments: [],
876
- };
877
- const res = await client.view({
878
- payload: data,
879
- options: { ledgerVersion: version },
880
- });
881
- const type = await coder.getMoveFunction(
882
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::lp_name_by_id",
883
- );
884
- return (await coder.decodeArray(res, type.return)) as any;
885
- }
886
- export async function nextPoolId(
887
- client: Aptos,
888
-
889
- version?: bigint,
890
- ): Promise<[bigint]> {
891
- const coder = defaultMoveCoder(client.config);
892
- const data: InputViewFunctionData = {
893
- function:
894
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::next_pool_id",
895
- functionArguments: [],
896
- typeArguments: [],
897
- };
898
- const res = await client.view({
899
- payload: data,
900
- options: { ledgerVersion: version },
901
- });
902
- const type = await coder.getMoveFunction(
903
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::next_pool_id",
904
- );
905
- return (await coder.decodeArray(res, type.return)) as any;
906
- }
907
-
908
- export async function poolAmpFactor<T0 = any, T1 = any, T2 = any, T3 = any>(
909
- client: Aptos,
910
- request: {
911
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
912
- },
913
- version?: bigint,
914
- ): Promise<[bigint]> {
915
- const coder = defaultMoveCoder(client.config);
916
- const data: InputViewFunctionData = {
917
- function:
918
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::pool_amp_factor",
919
- functionArguments: [],
920
- typeArguments: request.typeArguments,
921
- };
922
- const res = await client.view({
923
- payload: data,
924
- options: { ledgerVersion: version },
925
- });
926
- const type = await coder.getMoveFunction(
927
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::pool_amp_factor",
928
- );
929
- return (await coder.decodeArray(res, type.return)) as any;
930
- }
931
- export async function poolBalances<T0 = any, T1 = any, T2 = any, T3 = any>(
932
- client: Aptos,
933
- request: {
934
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
935
- },
936
- version?: bigint,
937
- ): Promise<[bigint[]]> {
938
- const coder = defaultMoveCoder(client.config);
939
- const data: InputViewFunctionData = {
940
- function:
941
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::pool_balances",
942
- functionArguments: [],
943
- typeArguments: request.typeArguments,
944
- };
945
- const res = await client.view({
946
- payload: data,
947
- options: { ledgerVersion: version },
948
- });
949
- const type = await coder.getMoveFunction(
950
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::pool_balances",
951
- );
952
- return (await coder.decodeArray(res, type.return)) as any;
953
- }
954
- export async function poolInfo(
955
- client: Aptos,
956
- request: {
957
- functionArguments: [string];
958
- },
959
- version?: bigint,
960
- ): Promise<[bigint[], bigint, bigint]> {
961
- const coder = defaultMoveCoder(client.config);
962
- const data: InputViewFunctionData = {
963
- function:
964
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::pool_info",
965
- functionArguments: coder.encodeArray(request.functionArguments),
966
- typeArguments: [],
967
- };
968
- const res = await client.view({
969
- payload: data,
970
- options: { ledgerVersion: version },
971
- });
972
- const type = await coder.getMoveFunction(
973
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::pool_info",
974
- );
975
- return (await coder.decodeArray(res, type.return)) as any;
976
- }
977
-
978
- export async function stablePoolExists<
979
- T0 = any,
980
- T1 = any,
981
- T2 = any,
982
- T3 = any,
983
- >(
984
- client: Aptos,
985
- request: {
986
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
987
- },
988
- version?: bigint,
989
- ): Promise<[boolean]> {
990
- const coder = defaultMoveCoder(client.config);
991
- const data: InputViewFunctionData = {
992
- function:
993
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::stable_pool_exists",
994
- functionArguments: [],
995
- typeArguments: request.typeArguments,
996
- };
997
- const res = await client.view({
998
- payload: data,
999
- options: { ledgerVersion: version },
1000
- });
1001
- const type = await coder.getMoveFunction(
1002
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::stable_pool_exists",
1003
- );
1004
- return (await coder.decodeArray(res, type.return)) as any;
1005
- }
1006
-
1007
- export async function swapFeeRatio<T0 = any, T1 = any, T2 = any, T3 = any>(
1008
- client: Aptos,
1009
- request: {
1010
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
1011
- },
1012
- version?: bigint,
1013
- ): Promise<
1014
- [
1015
- _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
1016
- ]
1017
- > {
1018
- const coder = defaultMoveCoder(client.config);
1019
- const data: InputViewFunctionData = {
1020
- function:
1021
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::swap_fee_ratio",
1022
- functionArguments: [],
1023
- typeArguments: request.typeArguments,
1024
- };
1025
- const res = await client.view({
1026
- payload: data,
1027
- options: { ledgerVersion: version },
1028
- });
1029
- const type = await coder.getMoveFunction(
1030
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::swap_fee_ratio",
1031
- );
1032
- return (await coder.decodeArray(res, type.return)) as any;
1033
- }
1034
- }
1035
- }
1036
-
1037
- export namespace fees_scripts {
1038
- export namespace entry {
1039
- export async function transferFee<T0 = any>(
1040
- client: Aptos,
1041
- account: AptosAccount,
1042
- request: {
1043
- typeArguments: [MoveStructId];
1044
- functionArguments: [MoveAddressType, bigint];
1045
- },
1046
- options?: InputGenerateTransactionOptions,
1047
- ): Promise<PendingTransactionResponse> {
1048
- const coder = defaultMoveCoder(client.config);
1049
- const transaction = await client.transaction.build.simple({
1050
- sender: account.accountAddress,
1051
- data: {
1052
- function:
1053
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::fees_scripts::transfer_fee",
1054
- functionArguments: coder.encodeArray(request.functionArguments),
1055
- typeArguments: request.typeArguments,
1056
- },
1057
- options,
1058
- });
1059
- return await client.signAndSubmitTransaction({
1060
- signer: account,
1061
- transaction,
1062
- });
1063
- }
1064
- }
1065
- export namespace view {}
1066
- }
1067
-
1068
- export namespace weighted_pool {
1069
- export interface AddLiquidityEvent<T0, T1, T2, T3, T4, T5, T6, T7> {
1070
- amount_0: bigint;
1071
- amount_1: bigint;
1072
- amount_2: bigint;
1073
- amount_3: bigint;
1074
- minted_lp_coin_amount: bigint;
1075
- }
1076
-
1077
- export namespace AddLiquidityEvent {
1078
- export const TYPE_QNAME =
1079
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::AddLiquidityEvent";
1080
-
1081
- const TYPE = new TypeDescriptor<
1082
- AddLiquidityEvent<any, any, any, any, any, any, any, any>
1083
- >(AddLiquidityEvent.TYPE_QNAME);
1084
-
1085
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1086
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1087
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1088
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1089
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1090
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1091
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1092
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1093
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1094
- ): TypeDescriptor<AddLiquidityEvent<T0, T1, T2, T3, T4, T5, T6, T7>> {
1095
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1096
- }
1097
- }
1098
-
1099
- export type AddLiquidityEventInstance = TypedEventInstance<
1100
- AddLiquidityEvent<any, any, any, any, any, any, any, any>
1101
- > & {
1102
- data_decoded: AddLiquidityEvent<any, any, any, any, any, any, any, any>;
1103
- type_arguments: [
1104
- string,
1105
- string,
1106
- string,
1107
- string,
1108
- string,
1109
- string,
1110
- string,
1111
- string,
1112
- ];
1113
- };
1114
-
1115
- export interface Flashloan<T0, T1, T2, T3, T4, T5, T6, T7> {
1116
- amount_0: bigint;
1117
- amount_1: bigint;
1118
- amount_2: bigint;
1119
- amount_3: bigint;
1120
- }
1121
-
1122
- export namespace Flashloan {
1123
- export const TYPE_QNAME =
1124
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Flashloan";
1125
-
1126
- const TYPE = new TypeDescriptor<
1127
- Flashloan<any, any, any, any, any, any, any, any>
1128
- >(Flashloan.TYPE_QNAME);
1129
-
1130
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1131
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1132
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1133
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1134
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1135
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1136
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1137
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1138
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1139
- ): TypeDescriptor<Flashloan<T0, T1, T2, T3, T4, T5, T6, T7>> {
1140
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1141
- }
1142
- }
1143
-
1144
- export interface FlashloanEvent<T0, T1, T2, T3, T4, T5, T6, T7> {
1145
- amount_0: bigint;
1146
- amount_1: bigint;
1147
- amount_2: bigint;
1148
- amount_3: bigint;
1149
- }
1150
-
1151
- export namespace FlashloanEvent {
1152
- export const TYPE_QNAME =
1153
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::FlashloanEvent";
1154
-
1155
- const TYPE = new TypeDescriptor<
1156
- FlashloanEvent<any, any, any, any, any, any, any, any>
1157
- >(FlashloanEvent.TYPE_QNAME);
1158
-
1159
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1160
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1161
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1162
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1163
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1164
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1165
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1166
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1167
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1168
- ): TypeDescriptor<FlashloanEvent<T0, T1, T2, T3, T4, T5, T6, T7>> {
1169
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1170
- }
1171
- }
1172
-
1173
- export type FlashloanEventInstance = TypedEventInstance<
1174
- FlashloanEvent<any, any, any, any, any, any, any, any>
1175
- > & {
1176
- data_decoded: FlashloanEvent<any, any, any, any, any, any, any, any>;
1177
- type_arguments: [
1178
- string,
1179
- string,
1180
- string,
1181
- string,
1182
- string,
1183
- string,
1184
- string,
1185
- string,
1186
- ];
1187
- };
1188
-
1189
- export interface FlashloanHelper<T0, T1, T2, T3, T4, T5, T6, T7> {
1190
- locked: boolean;
1191
- flashloan_fee_bps: bigint;
1192
- flashloan_events: _0x1.event.EventHandle<
1193
- weighted_pool.FlashloanEvent<T0, T1, T2, T3, T4, T5, T6, T7>
1194
- >;
1195
- }
1196
-
1197
- export namespace FlashloanHelper {
1198
- export const TYPE_QNAME =
1199
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::FlashloanHelper";
1200
-
1201
- const TYPE = new TypeDescriptor<
1202
- FlashloanHelper<any, any, any, any, any, any, any, any>
1203
- >(FlashloanHelper.TYPE_QNAME);
1204
-
1205
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1206
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1207
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1208
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1209
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1210
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1211
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1212
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1213
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1214
- ): TypeDescriptor<FlashloanHelper<T0, T1, T2, T3, T4, T5, T6, T7>> {
1215
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1216
- }
1217
- }
1218
-
1219
- export interface RemoveLiquidityEvent<T0, T1, T2, T3, T4, T5, T6, T7> {
1220
- amount_0: bigint;
1221
- amount_1: bigint;
1222
- amount_2: bigint;
1223
- amount_3: bigint;
1224
- burned_lp_coin_amount: bigint;
1225
- }
1226
-
1227
- export namespace RemoveLiquidityEvent {
1228
- export const TYPE_QNAME =
1229
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::RemoveLiquidityEvent";
1230
-
1231
- const TYPE = new TypeDescriptor<
1232
- RemoveLiquidityEvent<any, any, any, any, any, any, any, any>
1233
- >(RemoveLiquidityEvent.TYPE_QNAME);
1234
-
1235
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1236
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1237
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1238
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1239
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1240
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1241
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1242
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1243
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1244
- ): TypeDescriptor<RemoveLiquidityEvent<T0, T1, T2, T3, T4, T5, T6, T7>> {
1245
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1246
- }
1247
- }
1248
-
1249
- export type RemoveLiquidityEventInstance = TypedEventInstance<
1250
- RemoveLiquidityEvent<any, any, any, any, any, any, any, any>
1251
- > & {
1252
- data_decoded: RemoveLiquidityEvent<any, any, any, any, any, any, any, any>;
1253
- type_arguments: [
1254
- string,
1255
- string,
1256
- string,
1257
- string,
1258
- string,
1259
- string,
1260
- string,
1261
- string,
1262
- ];
1263
- };
1264
-
1265
- export interface SwapEvent<T0, T1, T2, T3, T4, T5, T6, T7> {
1266
- idx_in: bigint;
1267
- idx_out: bigint;
1268
- amount_in: bigint;
1269
- amount_out: bigint;
1270
- fee_amount: bigint;
1271
- pool_balance_0: bigint;
1272
- pool_balance_1: bigint;
1273
- pool_balance_2: bigint;
1274
- pool_balance_3: bigint;
1275
- }
1276
-
1277
- export namespace SwapEvent {
1278
- export const TYPE_QNAME =
1279
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::SwapEvent";
1280
-
1281
- const TYPE = new TypeDescriptor<
1282
- SwapEvent<any, any, any, any, any, any, any, any>
1283
- >(SwapEvent.TYPE_QNAME);
1284
-
1285
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1286
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1287
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1288
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1289
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1290
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1291
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1292
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1293
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1294
- ): TypeDescriptor<SwapEvent<T0, T1, T2, T3, T4, T5, T6, T7>> {
1295
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1296
- }
1297
- }
1298
-
1299
- export type SwapEventInstance = TypedEventInstance<
1300
- SwapEvent<any, any, any, any, any, any, any, any>
1301
- > & {
1302
- data_decoded: SwapEvent<any, any, any, any, any, any, any, any>;
1303
- type_arguments: [
1304
- string,
1305
- string,
1306
- string,
1307
- string,
1308
- string,
1309
- string,
1310
- string,
1311
- string,
1312
- ];
1313
- };
1314
-
1315
- export interface Weight_10 {
1316
- dummy_field: boolean;
1317
- }
1318
-
1319
- export namespace Weight_10 {
1320
- export const TYPE_QNAME =
1321
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_10";
1322
-
1323
- const TYPE = new TypeDescriptor<Weight_10>(Weight_10.TYPE_QNAME);
1324
-
1325
- export function type(): TypeDescriptor<Weight_10> {
1326
- return TYPE.apply();
1327
- }
1328
- }
1329
-
1330
- export interface Weight_15 {
1331
- dummy_field: boolean;
1332
- }
1333
-
1334
- export namespace Weight_15 {
1335
- export const TYPE_QNAME =
1336
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_15";
1337
-
1338
- const TYPE = new TypeDescriptor<Weight_15>(Weight_15.TYPE_QNAME);
1339
-
1340
- export function type(): TypeDescriptor<Weight_15> {
1341
- return TYPE.apply();
1342
- }
1343
- }
1344
-
1345
- export interface Weight_20 {
1346
- dummy_field: boolean;
1347
- }
1348
-
1349
- export namespace Weight_20 {
1350
- export const TYPE_QNAME =
1351
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_20";
1352
-
1353
- const TYPE = new TypeDescriptor<Weight_20>(Weight_20.TYPE_QNAME);
1354
-
1355
- export function type(): TypeDescriptor<Weight_20> {
1356
- return TYPE.apply();
1357
- }
1358
- }
1359
-
1360
- export interface Weight_25 {
1361
- dummy_field: boolean;
1362
- }
1363
-
1364
- export namespace Weight_25 {
1365
- export const TYPE_QNAME =
1366
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_25";
1367
-
1368
- const TYPE = new TypeDescriptor<Weight_25>(Weight_25.TYPE_QNAME);
1369
-
1370
- export function type(): TypeDescriptor<Weight_25> {
1371
- return TYPE.apply();
1372
- }
1373
- }
1374
-
1375
- export interface Weight_30 {
1376
- dummy_field: boolean;
1377
- }
1378
-
1379
- export namespace Weight_30 {
1380
- export const TYPE_QNAME =
1381
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_30";
1382
-
1383
- const TYPE = new TypeDescriptor<Weight_30>(Weight_30.TYPE_QNAME);
1384
-
1385
- export function type(): TypeDescriptor<Weight_30> {
1386
- return TYPE.apply();
1387
- }
1388
- }
1389
-
1390
- export interface Weight_35 {
1391
- dummy_field: boolean;
1392
- }
1393
-
1394
- export namespace Weight_35 {
1395
- export const TYPE_QNAME =
1396
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_35";
1397
-
1398
- const TYPE = new TypeDescriptor<Weight_35>(Weight_35.TYPE_QNAME);
1399
-
1400
- export function type(): TypeDescriptor<Weight_35> {
1401
- return TYPE.apply();
1402
- }
1403
- }
1404
-
1405
- export interface Weight_40 {
1406
- dummy_field: boolean;
1407
- }
1408
-
1409
- export namespace Weight_40 {
1410
- export const TYPE_QNAME =
1411
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_40";
1412
-
1413
- const TYPE = new TypeDescriptor<Weight_40>(Weight_40.TYPE_QNAME);
1414
-
1415
- export function type(): TypeDescriptor<Weight_40> {
1416
- return TYPE.apply();
1417
- }
1418
- }
1419
-
1420
- export interface Weight_45 {
1421
- dummy_field: boolean;
1422
- }
1423
-
1424
- export namespace Weight_45 {
1425
- export const TYPE_QNAME =
1426
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_45";
1427
-
1428
- const TYPE = new TypeDescriptor<Weight_45>(Weight_45.TYPE_QNAME);
1429
-
1430
- export function type(): TypeDescriptor<Weight_45> {
1431
- return TYPE.apply();
1432
- }
1433
- }
1434
-
1435
- export interface Weight_5 {
1436
- dummy_field: boolean;
1437
- }
1438
-
1439
- export namespace Weight_5 {
1440
- export const TYPE_QNAME =
1441
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_5";
1442
-
1443
- const TYPE = new TypeDescriptor<Weight_5>(Weight_5.TYPE_QNAME);
1444
-
1445
- export function type(): TypeDescriptor<Weight_5> {
1446
- return TYPE.apply();
1447
- }
1448
- }
1449
-
1450
- export interface Weight_50 {
1451
- dummy_field: boolean;
1452
- }
1453
-
1454
- export namespace Weight_50 {
1455
- export const TYPE_QNAME =
1456
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_50";
1457
-
1458
- const TYPE = new TypeDescriptor<Weight_50>(Weight_50.TYPE_QNAME);
1459
-
1460
- export function type(): TypeDescriptor<Weight_50> {
1461
- return TYPE.apply();
1462
- }
1463
- }
1464
-
1465
- export interface Weight_55 {
1466
- dummy_field: boolean;
1467
- }
1468
-
1469
- export namespace Weight_55 {
1470
- export const TYPE_QNAME =
1471
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_55";
1472
-
1473
- const TYPE = new TypeDescriptor<Weight_55>(Weight_55.TYPE_QNAME);
1474
-
1475
- export function type(): TypeDescriptor<Weight_55> {
1476
- return TYPE.apply();
1477
- }
1478
- }
1479
-
1480
- export interface Weight_60 {
1481
- dummy_field: boolean;
1482
- }
1483
-
1484
- export namespace Weight_60 {
1485
- export const TYPE_QNAME =
1486
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_60";
1487
-
1488
- const TYPE = new TypeDescriptor<Weight_60>(Weight_60.TYPE_QNAME);
1489
-
1490
- export function type(): TypeDescriptor<Weight_60> {
1491
- return TYPE.apply();
1492
- }
1493
- }
1494
-
1495
- export interface Weight_65 {
1496
- dummy_field: boolean;
1497
- }
1498
-
1499
- export namespace Weight_65 {
1500
- export const TYPE_QNAME =
1501
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_65";
1502
-
1503
- const TYPE = new TypeDescriptor<Weight_65>(Weight_65.TYPE_QNAME);
1504
-
1505
- export function type(): TypeDescriptor<Weight_65> {
1506
- return TYPE.apply();
1507
- }
1508
- }
1509
-
1510
- export interface Weight_70 {
1511
- dummy_field: boolean;
1512
- }
1513
-
1514
- export namespace Weight_70 {
1515
- export const TYPE_QNAME =
1516
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_70";
1517
-
1518
- const TYPE = new TypeDescriptor<Weight_70>(Weight_70.TYPE_QNAME);
1519
-
1520
- export function type(): TypeDescriptor<Weight_70> {
1521
- return TYPE.apply();
1522
- }
1523
- }
1524
-
1525
- export interface Weight_75 {
1526
- dummy_field: boolean;
1527
- }
1528
-
1529
- export namespace Weight_75 {
1530
- export const TYPE_QNAME =
1531
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_75";
1532
-
1533
- const TYPE = new TypeDescriptor<Weight_75>(Weight_75.TYPE_QNAME);
1534
-
1535
- export function type(): TypeDescriptor<Weight_75> {
1536
- return TYPE.apply();
1537
- }
1538
- }
1539
-
1540
- export interface Weight_80 {
1541
- dummy_field: boolean;
1542
- }
1543
-
1544
- export namespace Weight_80 {
1545
- export const TYPE_QNAME =
1546
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_80";
1547
-
1548
- const TYPE = new TypeDescriptor<Weight_80>(Weight_80.TYPE_QNAME);
1549
-
1550
- export function type(): TypeDescriptor<Weight_80> {
1551
- return TYPE.apply();
1552
- }
1553
- }
1554
-
1555
- export interface Weight_85 {
1556
- dummy_field: boolean;
1557
- }
1558
-
1559
- export namespace Weight_85 {
1560
- export const TYPE_QNAME =
1561
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_85";
1562
-
1563
- const TYPE = new TypeDescriptor<Weight_85>(Weight_85.TYPE_QNAME);
1564
-
1565
- export function type(): TypeDescriptor<Weight_85> {
1566
- return TYPE.apply();
1567
- }
1568
- }
1569
-
1570
- export interface Weight_90 {
1571
- dummy_field: boolean;
1572
- }
1573
-
1574
- export namespace Weight_90 {
1575
- export const TYPE_QNAME =
1576
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_90";
1577
-
1578
- const TYPE = new TypeDescriptor<Weight_90>(Weight_90.TYPE_QNAME);
1579
-
1580
- export function type(): TypeDescriptor<Weight_90> {
1581
- return TYPE.apply();
1582
- }
1583
- }
1584
-
1585
- export interface Weight_95 {
1586
- dummy_field: boolean;
1587
- }
1588
-
1589
- export namespace Weight_95 {
1590
- export const TYPE_QNAME =
1591
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Weight_95";
1592
-
1593
- const TYPE = new TypeDescriptor<Weight_95>(Weight_95.TYPE_QNAME);
1594
-
1595
- export function type(): TypeDescriptor<Weight_95> {
1596
- return TYPE.apply();
1597
- }
1598
- }
1599
-
1600
- export interface WeightedPool<T0, T1, T2, T3, T4, T5, T6, T7> {
1601
- asset_0: _0x1.coin.Coin<T0>;
1602
- asset_1: _0x1.coin.Coin<T1>;
1603
- asset_2: _0x1.coin.Coin<T2>;
1604
- asset_3: _0x1.coin.Coin<T3>;
1605
- weight_0: bigint;
1606
- weight_1: bigint;
1607
- weight_2: bigint;
1608
- weight_3: bigint;
1609
- swap_fee_ratio: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
1610
- inverse_negated_swap_fee_ratio: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
1611
- pool_token_mint_cap: _0x1.coin.MintCapability<
1612
- weighted_pool.WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>
1613
- >;
1614
- pool_token_burn_cap: _0x1.coin.BurnCapability<
1615
- weighted_pool.WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>
1616
- >;
1617
- reserved_lp_coin: _0x1.coin.Coin<
1618
- weighted_pool.WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>
1619
- >;
1620
- events: weighted_pool.WeightedPoolEvents<T0, T1, T2, T3, T4, T5, T6, T7>;
1621
- }
1622
-
1623
- export namespace WeightedPool {
1624
- export const TYPE_QNAME =
1625
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPool";
1626
-
1627
- const TYPE = new TypeDescriptor<
1628
- WeightedPool<any, any, any, any, any, any, any, any>
1629
- >(WeightedPool.TYPE_QNAME);
1630
-
1631
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1632
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1633
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1634
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1635
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1636
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1637
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1638
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1639
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1640
- ): TypeDescriptor<WeightedPool<T0, T1, T2, T3, T4, T5, T6, T7>> {
1641
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1642
- }
1643
- }
1644
-
1645
- export interface WeightedPoolCreationEvent<T0, T1, T2, T3, T4, T5, T6, T7> {
1646
- creator: MoveAddressType;
1647
- amount_0: bigint;
1648
- amount_1: bigint;
1649
- amount_2: bigint;
1650
- amount_3: bigint;
1651
- minted_lp_coin_amount: bigint;
1652
- swap_fee_bps: bigint;
1653
- }
1654
-
1655
- export namespace WeightedPoolCreationEvent {
1656
- export const TYPE_QNAME =
1657
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolCreationEvent";
1658
-
1659
- const TYPE = new TypeDescriptor<
1660
- WeightedPoolCreationEvent<any, any, any, any, any, any, any, any>
1661
- >(WeightedPoolCreationEvent.TYPE_QNAME);
1662
-
1663
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1664
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1665
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1666
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1667
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1668
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1669
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1670
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1671
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1672
- ): TypeDescriptor<
1673
- WeightedPoolCreationEvent<T0, T1, T2, T3, T4, T5, T6, T7>
1674
- > {
1675
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1676
- }
1677
- }
1678
-
1679
- export type WeightedPoolCreationEventInstance = TypedEventInstance<
1680
- WeightedPoolCreationEvent<any, any, any, any, any, any, any, any>
1681
- > & {
1682
- data_decoded: WeightedPoolCreationEvent<
1683
- any,
1684
- any,
1685
- any,
1686
- any,
1687
- any,
1688
- any,
1689
- any,
1690
- any
1691
- >;
1692
- type_arguments: [
1693
- string,
1694
- string,
1695
- string,
1696
- string,
1697
- string,
1698
- string,
1699
- string,
1700
- string,
1701
- ];
1702
- };
1703
-
1704
- export interface WeightedPoolEvents<T0, T1, T2, T3, T4, T5, T6, T7> {
1705
- pool_creation_events: _0x1.event.EventHandle<
1706
- weighted_pool.WeightedPoolCreationEvent<T0, T1, T2, T3, T4, T5, T6, T7>
1707
- >;
1708
- add_liquidity_events: _0x1.event.EventHandle<
1709
- weighted_pool.AddLiquidityEvent<T0, T1, T2, T3, T4, T5, T6, T7>
1710
- >;
1711
- remove_liquidity_events: _0x1.event.EventHandle<
1712
- weighted_pool.RemoveLiquidityEvent<T0, T1, T2, T3, T4, T5, T6, T7>
1713
- >;
1714
- swap_events: _0x1.event.EventHandle<
1715
- weighted_pool.SwapEvent<T0, T1, T2, T3, T4, T5, T6, T7>
1716
- >;
1717
- param_change_events: _0x1.event.EventHandle<weighted_pool.WeightedPoolParamChangeEvent>;
1718
- }
1719
-
1720
- export namespace WeightedPoolEvents {
1721
- export const TYPE_QNAME =
1722
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolEvents";
1723
-
1724
- const TYPE = new TypeDescriptor<
1725
- WeightedPoolEvents<any, any, any, any, any, any, any, any>
1726
- >(WeightedPoolEvents.TYPE_QNAME);
1727
-
1728
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1729
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1730
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1731
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1732
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1733
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1734
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1735
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1736
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1737
- ): TypeDescriptor<WeightedPoolEvents<T0, T1, T2, T3, T4, T5, T6, T7>> {
1738
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1739
- }
1740
- }
1741
-
1742
- export interface WeightedPoolInfo {
1743
- balances: bigint[];
1744
- weights: bigint[];
1745
- lp_coin_supply: bigint;
1746
- }
1747
-
1748
- export namespace WeightedPoolInfo {
1749
- export const TYPE_QNAME =
1750
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolInfo";
1751
-
1752
- const TYPE = new TypeDescriptor<WeightedPoolInfo>(
1753
- WeightedPoolInfo.TYPE_QNAME,
1754
- );
1755
-
1756
- export function type(): TypeDescriptor<WeightedPoolInfo> {
1757
- return TYPE.apply();
1758
- }
1759
- }
1760
-
1761
- export interface WeightedPoolLookup {
1762
- name_to_pool: _0x1.table.Table<string, weighted_pool.WeightedPoolInfo>;
1763
- id_to_name: _0x1.table.Table<bigint, string>;
1764
- next_id: bigint;
1765
- }
1766
-
1767
- export namespace WeightedPoolLookup {
1768
- export const TYPE_QNAME =
1769
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolLookup";
1770
-
1771
- const TYPE = new TypeDescriptor<WeightedPoolLookup>(
1772
- WeightedPoolLookup.TYPE_QNAME,
1773
- );
1774
-
1775
- export function type(): TypeDescriptor<WeightedPoolLookup> {
1776
- return TYPE.apply();
1777
- }
1778
- }
1779
-
1780
- export interface WeightedPoolParamChangeEvent {
1781
- name: string;
1782
- prev_value: bigint;
1783
- new_value: bigint;
1784
- }
1785
-
1786
- export namespace WeightedPoolParamChangeEvent {
1787
- export const TYPE_QNAME =
1788
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolParamChangeEvent";
1789
-
1790
- const TYPE = new TypeDescriptor<WeightedPoolParamChangeEvent>(
1791
- WeightedPoolParamChangeEvent.TYPE_QNAME,
1792
- );
1793
-
1794
- export function type(): TypeDescriptor<WeightedPoolParamChangeEvent> {
1795
- return TYPE.apply();
1796
- }
1797
- }
1798
-
1799
- export type WeightedPoolParamChangeEventInstance =
1800
- TypedEventInstance<WeightedPoolParamChangeEvent> & {
1801
- data_decoded: WeightedPoolParamChangeEvent;
1802
- type_arguments: [];
1803
- };
1804
-
1805
- export interface WeightedPoolParams {
1806
- default_swap_fee_ratio: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
1807
- param_change_events: _0x1.event.EventHandle<weighted_pool.WeightedPoolParamChangeEvent>;
1808
- }
1809
-
1810
- export namespace WeightedPoolParams {
1811
- export const TYPE_QNAME =
1812
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolParams";
1813
-
1814
- const TYPE = new TypeDescriptor<WeightedPoolParams>(
1815
- WeightedPoolParams.TYPE_QNAME,
1816
- );
1817
-
1818
- export function type(): TypeDescriptor<WeightedPoolParams> {
1819
- return TYPE.apply();
1820
- }
1821
- }
1822
-
1823
- export interface WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7> {
1824
- dummy_field: boolean;
1825
- }
1826
-
1827
- export namespace WeightedPoolToken {
1828
- export const TYPE_QNAME =
1829
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolToken";
1830
-
1831
- const TYPE = new TypeDescriptor<
1832
- WeightedPoolToken<any, any, any, any, any, any, any, any>
1833
- >(WeightedPoolToken.TYPE_QNAME);
1834
-
1835
- export function type<T0, T1, T2, T3, T4, T5, T6, T7>(
1836
- arg0: TypeDescriptor<T0> = ANY_TYPE,
1837
- arg1: TypeDescriptor<T1> = ANY_TYPE,
1838
- arg2: TypeDescriptor<T2> = ANY_TYPE,
1839
- arg3: TypeDescriptor<T3> = ANY_TYPE,
1840
- arg4: TypeDescriptor<T4> = ANY_TYPE,
1841
- arg5: TypeDescriptor<T5> = ANY_TYPE,
1842
- arg6: TypeDescriptor<T6> = ANY_TYPE,
1843
- arg7: TypeDescriptor<T7> = ANY_TYPE,
1844
- ): TypeDescriptor<WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>> {
1845
- return TYPE.apply(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7);
1846
- }
1847
- }
1848
-
1849
- export namespace entry {
1850
- export async function setDefaultPoolSwapFeeBps(
1851
- client: Aptos,
1852
- account: AptosAccount,
1853
- request: {
1854
- typeArguments: [];
1855
- functionArguments: [bigint];
1856
- },
1857
- options?: InputGenerateTransactionOptions,
1858
- ): Promise<PendingTransactionResponse> {
1859
- const coder = defaultMoveCoder(client.config);
1860
- const transaction = await client.transaction.build.simple({
1861
- sender: account.accountAddress,
1862
- data: {
1863
- function:
1864
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::set_default_pool_swap_fee_bps",
1865
- functionArguments: coder.encodeArray(request.functionArguments),
1866
- typeArguments: [],
1867
- },
1868
- options,
1869
- });
1870
- return await client.signAndSubmitTransaction({
1871
- signer: account,
1872
- transaction,
1873
- });
1874
- }
1875
- export async function setFlashloanFeeBps<
1876
- T0 = any,
1877
- T1 = any,
1878
- T2 = any,
1879
- T3 = any,
1880
- T4 = any,
1881
- T5 = any,
1882
- T6 = any,
1883
- T7 = any,
1884
- >(
1885
- client: Aptos,
1886
- account: AptosAccount,
1887
- request: {
1888
- typeArguments: [
1889
- MoveStructId,
1890
- MoveStructId,
1891
- MoveStructId,
1892
- MoveStructId,
1893
- MoveStructId,
1894
- MoveStructId,
1895
- MoveStructId,
1896
- MoveStructId,
1897
- ];
1898
- functionArguments: [bigint];
1899
- },
1900
- options?: InputGenerateTransactionOptions,
1901
- ): Promise<PendingTransactionResponse> {
1902
- const coder = defaultMoveCoder(client.config);
1903
- const transaction = await client.transaction.build.simple({
1904
- sender: account.accountAddress,
1905
- data: {
1906
- function:
1907
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::set_flashloan_fee_bps",
1908
- functionArguments: coder.encodeArray(request.functionArguments),
1909
- typeArguments: request.typeArguments,
1910
- },
1911
- options,
1912
- });
1913
- return await client.signAndSubmitTransaction({
1914
- signer: account,
1915
- transaction,
1916
- });
1917
- }
1918
- export async function setPoolSwapFeeBps<
1919
- T0 = any,
1920
- T1 = any,
1921
- T2 = any,
1922
- T3 = any,
1923
- T4 = any,
1924
- T5 = any,
1925
- T6 = any,
1926
- T7 = any,
1927
- >(
1928
- client: Aptos,
1929
- account: AptosAccount,
1930
- request: {
1931
- typeArguments: [
1932
- MoveStructId,
1933
- MoveStructId,
1934
- MoveStructId,
1935
- MoveStructId,
1936
- MoveStructId,
1937
- MoveStructId,
1938
- MoveStructId,
1939
- MoveStructId,
1940
- ];
1941
- functionArguments: [bigint];
1942
- },
1943
- options?: InputGenerateTransactionOptions,
1944
- ): Promise<PendingTransactionResponse> {
1945
- const coder = defaultMoveCoder(client.config);
1946
- const transaction = await client.transaction.build.simple({
1947
- sender: account.accountAddress,
1948
- data: {
1949
- function:
1950
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::set_pool_swap_fee_bps",
1951
- functionArguments: coder.encodeArray(request.functionArguments),
1952
- typeArguments: request.typeArguments,
1953
- },
1954
- options,
1955
- });
1956
- return await client.signAndSubmitTransaction({
1957
- signer: account,
1958
- transaction,
1959
- });
1960
- }
1961
- }
1962
- export namespace view {
1963
- export async function flashloanFeeBps<
1964
- T0 = any,
1965
- T1 = any,
1966
- T2 = any,
1967
- T3 = any,
1968
- T4 = any,
1969
- T5 = any,
1970
- T6 = any,
1971
- T7 = any,
1972
- >(
1973
- client: Aptos,
1974
- request: {
1975
- typeArguments: [
1976
- MoveStructId,
1977
- MoveStructId,
1978
- MoveStructId,
1979
- MoveStructId,
1980
- MoveStructId,
1981
- MoveStructId,
1982
- MoveStructId,
1983
- MoveStructId,
1984
- ];
1985
- },
1986
- version?: bigint,
1987
- ): Promise<[bigint]> {
1988
- const coder = defaultMoveCoder(client.config);
1989
- const data: InputViewFunctionData = {
1990
- function:
1991
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::flashloan_fee_bps",
1992
- functionArguments: [],
1993
- typeArguments: request.typeArguments,
1994
- };
1995
- const res = await client.view({
1996
- payload: data,
1997
- options: { ledgerVersion: version },
1998
- });
1999
- const type = await coder.getMoveFunction(
2000
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::flashloan_fee_bps",
2001
- );
2002
- return (await coder.decodeArray(res, type.return)) as any;
2003
- }
2004
- export async function getWeight<T0 = any>(
2005
- client: Aptos,
2006
- request: {
2007
- typeArguments: [MoveStructId];
2008
- },
2009
- version?: bigint,
2010
- ): Promise<[bigint]> {
2011
- const coder = defaultMoveCoder(client.config);
2012
- const data: InputViewFunctionData = {
2013
- function:
2014
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::get_weight",
2015
- functionArguments: [],
2016
- typeArguments: request.typeArguments,
2017
- };
2018
- const res = await client.view({
2019
- payload: data,
2020
- options: { ledgerVersion: version },
2021
- });
2022
- const type = await coder.getMoveFunction(
2023
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::get_weight",
2024
- );
2025
- return (await coder.decodeArray(res, type.return)) as any;
2026
- }
2027
-
2028
- export async function lpNameById(
2029
- client: Aptos,
2030
- request: {
2031
- functionArguments: [bigint];
2032
- },
2033
- version?: bigint,
2034
- ): Promise<[string]> {
2035
- const coder = defaultMoveCoder(client.config);
2036
- const data: InputViewFunctionData = {
2037
- function:
2038
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::lp_name_by_id",
2039
- functionArguments: coder.encodeArray(request.functionArguments),
2040
- typeArguments: [],
2041
- };
2042
- const res = await client.view({
2043
- payload: data,
2044
- options: { ledgerVersion: version },
2045
- });
2046
- const type = await coder.getMoveFunction(
2047
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::lp_name_by_id",
2048
- );
2049
- return (await coder.decodeArray(res, type.return)) as any;
2050
- }
2051
- export async function nextPoolId(
2052
- client: Aptos,
2053
-
2054
- version?: bigint,
2055
- ): Promise<[bigint]> {
2056
- const coder = defaultMoveCoder(client.config);
2057
- const data: InputViewFunctionData = {
2058
- function:
2059
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::next_pool_id",
2060
- functionArguments: [],
2061
- typeArguments: [],
2062
- };
2063
- const res = await client.view({
2064
- payload: data,
2065
- options: { ledgerVersion: version },
2066
- });
2067
- const type = await coder.getMoveFunction(
2068
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::next_pool_id",
2069
- );
2070
- return (await coder.decodeArray(res, type.return)) as any;
2071
- }
2072
-
2073
- export async function poolBalancesAndWeights<
2074
- T0 = any,
2075
- T1 = any,
2076
- T2 = any,
2077
- T3 = any,
2078
- T4 = any,
2079
- T5 = any,
2080
- T6 = any,
2081
- T7 = any,
2082
- >(
2083
- client: Aptos,
2084
- request: {
2085
- typeArguments: [
2086
- MoveStructId,
2087
- MoveStructId,
2088
- MoveStructId,
2089
- MoveStructId,
2090
- MoveStructId,
2091
- MoveStructId,
2092
- MoveStructId,
2093
- MoveStructId,
2094
- ];
2095
- },
2096
- version?: bigint,
2097
- ): Promise<[bigint[], bigint[]]> {
2098
- const coder = defaultMoveCoder(client.config);
2099
- const data: InputViewFunctionData = {
2100
- function:
2101
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::pool_balances_and_weights",
2102
- functionArguments: [],
2103
- typeArguments: request.typeArguments,
2104
- };
2105
- const res = await client.view({
2106
- payload: data,
2107
- options: { ledgerVersion: version },
2108
- });
2109
- const type = await coder.getMoveFunction(
2110
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::pool_balances_and_weights",
2111
- );
2112
- return (await coder.decodeArray(res, type.return)) as any;
2113
- }
2114
- export async function poolInfo(
2115
- client: Aptos,
2116
- request: {
2117
- functionArguments: [string];
2118
- },
2119
- version?: bigint,
2120
- ): Promise<[bigint[], bigint[], bigint]> {
2121
- const coder = defaultMoveCoder(client.config);
2122
- const data: InputViewFunctionData = {
2123
- function:
2124
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::pool_info",
2125
- functionArguments: coder.encodeArray(request.functionArguments),
2126
- typeArguments: [],
2127
- };
2128
- const res = await client.view({
2129
- payload: data,
2130
- options: { ledgerVersion: version },
2131
- });
2132
- const type = await coder.getMoveFunction(
2133
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::pool_info",
2134
- );
2135
- return (await coder.decodeArray(res, type.return)) as any;
2136
- }
2137
-
2138
- export async function swapFeeRatio<
2139
- T0 = any,
2140
- T1 = any,
2141
- T2 = any,
2142
- T3 = any,
2143
- T4 = any,
2144
- T5 = any,
2145
- T6 = any,
2146
- T7 = any,
2147
- >(
2148
- client: Aptos,
2149
- request: {
2150
- typeArguments: [
2151
- MoveStructId,
2152
- MoveStructId,
2153
- MoveStructId,
2154
- MoveStructId,
2155
- MoveStructId,
2156
- MoveStructId,
2157
- MoveStructId,
2158
- MoveStructId,
2159
- ];
2160
- },
2161
- version?: bigint,
2162
- ): Promise<
2163
- [
2164
- _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
2165
- ]
2166
- > {
2167
- const coder = defaultMoveCoder(client.config);
2168
- const data: InputViewFunctionData = {
2169
- function:
2170
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::swap_fee_ratio",
2171
- functionArguments: [],
2172
- typeArguments: request.typeArguments,
2173
- };
2174
- const res = await client.view({
2175
- payload: data,
2176
- options: { ledgerVersion: version },
2177
- });
2178
- const type = await coder.getMoveFunction(
2179
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::swap_fee_ratio",
2180
- );
2181
- return (await coder.decodeArray(res, type.return)) as any;
2182
- }
2183
- export async function weightedPoolExists<
2184
- T0 = any,
2185
- T1 = any,
2186
- T2 = any,
2187
- T3 = any,
2188
- T4 = any,
2189
- T5 = any,
2190
- T6 = any,
2191
- T7 = any,
2192
- >(
2193
- client: Aptos,
2194
- request: {
2195
- typeArguments: [
2196
- MoveStructId,
2197
- MoveStructId,
2198
- MoveStructId,
2199
- MoveStructId,
2200
- MoveStructId,
2201
- MoveStructId,
2202
- MoveStructId,
2203
- MoveStructId,
2204
- ];
2205
- },
2206
- version?: bigint,
2207
- ): Promise<[boolean]> {
2208
- const coder = defaultMoveCoder(client.config);
2209
- const data: InputViewFunctionData = {
2210
- function:
2211
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::weighted_pool_exists",
2212
- functionArguments: [],
2213
- typeArguments: request.typeArguments,
2214
- };
2215
- const res = await client.view({
2216
- payload: data,
2217
- options: { ledgerVersion: version },
2218
- });
2219
- const type = await coder.getMoveFunction(
2220
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::weighted_pool_exists",
2221
- );
2222
- return (await coder.decodeArray(res, type.return)) as any;
2223
- }
2224
- }
2225
- }
2226
-
2227
- export namespace multi_hop_scripts {
2228
- export namespace entry {
2229
- export async function swapExactIn2<
2230
- T0 = any,
2231
- T1 = any,
2232
- T2 = any,
2233
- T3 = any,
2234
- T4 = any,
2235
- T5 = any,
2236
- T6 = any,
2237
- T7 = any,
2238
- T8 = any,
2239
- T9 = any,
2240
- T10 = any,
2241
- T11 = any,
2242
- T12 = any,
2243
- T13 = any,
2244
- T14 = any,
2245
- T15 = any,
2246
- T16 = any,
2247
- T17 = any,
2248
- T18 = any,
2249
- >(
2250
- client: Aptos,
2251
- account: AptosAccount,
2252
- request: {
2253
- typeArguments: [
2254
- MoveStructId,
2255
- MoveStructId,
2256
- MoveStructId,
2257
- MoveStructId,
2258
- MoveStructId,
2259
- MoveStructId,
2260
- MoveStructId,
2261
- MoveStructId,
2262
- MoveStructId,
2263
- MoveStructId,
2264
- MoveStructId,
2265
- MoveStructId,
2266
- MoveStructId,
2267
- MoveStructId,
2268
- MoveStructId,
2269
- MoveStructId,
2270
- MoveStructId,
2271
- MoveStructId,
2272
- MoveStructId,
2273
- ];
2274
- functionArguments: [bigint, bigint];
2275
- },
2276
- options?: InputGenerateTransactionOptions,
2277
- ): Promise<PendingTransactionResponse> {
2278
- const coder = defaultMoveCoder(client.config);
2279
- const transaction = await client.transaction.build.simple({
2280
- sender: account.accountAddress,
2281
- data: {
2282
- function:
2283
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::multi_hop_scripts::swap_exact_in_2",
2284
- functionArguments: coder.encodeArray(request.functionArguments),
2285
- typeArguments: request.typeArguments,
2286
- },
2287
- options,
2288
- });
2289
- return await client.signAndSubmitTransaction({
2290
- signer: account,
2291
- transaction,
2292
- });
2293
- }
2294
- export async function swapExactIn3<
2295
- T0 = any,
2296
- T1 = any,
2297
- T2 = any,
2298
- T3 = any,
2299
- T4 = any,
2300
- T5 = any,
2301
- T6 = any,
2302
- T7 = any,
2303
- T8 = any,
2304
- T9 = any,
2305
- T10 = any,
2306
- T11 = any,
2307
- T12 = any,
2308
- T13 = any,
2309
- T14 = any,
2310
- T15 = any,
2311
- T16 = any,
2312
- T17 = any,
2313
- T18 = any,
2314
- T19 = any,
2315
- T20 = any,
2316
- T21 = any,
2317
- T22 = any,
2318
- T23 = any,
2319
- T24 = any,
2320
- T25 = any,
2321
- T26 = any,
2322
- T27 = any,
2323
- >(
2324
- client: Aptos,
2325
- account: AptosAccount,
2326
- request: {
2327
- typeArguments: [
2328
- MoveStructId,
2329
- MoveStructId,
2330
- MoveStructId,
2331
- MoveStructId,
2332
- MoveStructId,
2333
- MoveStructId,
2334
- MoveStructId,
2335
- MoveStructId,
2336
- MoveStructId,
2337
- MoveStructId,
2338
- MoveStructId,
2339
- MoveStructId,
2340
- MoveStructId,
2341
- MoveStructId,
2342
- MoveStructId,
2343
- MoveStructId,
2344
- MoveStructId,
2345
- MoveStructId,
2346
- MoveStructId,
2347
- MoveStructId,
2348
- MoveStructId,
2349
- MoveStructId,
2350
- MoveStructId,
2351
- MoveStructId,
2352
- MoveStructId,
2353
- MoveStructId,
2354
- MoveStructId,
2355
- MoveStructId,
2356
- ];
2357
- functionArguments: [bigint, bigint];
2358
- },
2359
- options?: InputGenerateTransactionOptions,
2360
- ): Promise<PendingTransactionResponse> {
2361
- const coder = defaultMoveCoder(client.config);
2362
- const transaction = await client.transaction.build.simple({
2363
- sender: account.accountAddress,
2364
- data: {
2365
- function:
2366
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::multi_hop_scripts::swap_exact_in_3",
2367
- functionArguments: coder.encodeArray(request.functionArguments),
2368
- typeArguments: request.typeArguments,
2369
- },
2370
- options,
2371
- });
2372
- return await client.signAndSubmitTransaction({
2373
- signer: account,
2374
- transaction,
2375
- });
2376
- }
2377
- }
2378
- export namespace view {}
2379
- }
2380
-
2381
- export namespace stable_pool_scripts {
2382
- export namespace entry {
2383
- export async function addLiquidity<T0 = any, T1 = any, T2 = any, T3 = any>(
2384
- client: Aptos,
2385
- account: AptosAccount,
2386
- request: {
2387
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
2388
- functionArguments: [bigint, bigint, bigint, bigint];
2389
- },
2390
- options?: InputGenerateTransactionOptions,
2391
- ): Promise<PendingTransactionResponse> {
2392
- const coder = defaultMoveCoder(client.config);
2393
- const transaction = await client.transaction.build.simple({
2394
- sender: account.accountAddress,
2395
- data: {
2396
- function:
2397
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool_scripts::add_liquidity",
2398
- functionArguments: coder.encodeArray(request.functionArguments),
2399
- typeArguments: request.typeArguments,
2400
- },
2401
- options,
2402
- });
2403
- return await client.signAndSubmitTransaction({
2404
- signer: account,
2405
- transaction,
2406
- });
2407
- }
2408
- export async function createStablePool<
2409
- T0 = any,
2410
- T1 = any,
2411
- T2 = any,
2412
- T3 = any,
2413
- >(
2414
- client: Aptos,
2415
- account: AptosAccount,
2416
- request: {
2417
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
2418
- functionArguments: [bigint, bigint, bigint, bigint, bigint];
2419
- },
2420
- options?: InputGenerateTransactionOptions,
2421
- ): Promise<PendingTransactionResponse> {
2422
- const coder = defaultMoveCoder(client.config);
2423
- const transaction = await client.transaction.build.simple({
2424
- sender: account.accountAddress,
2425
- data: {
2426
- function:
2427
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool_scripts::create_stable_pool",
2428
- functionArguments: coder.encodeArray(request.functionArguments),
2429
- typeArguments: request.typeArguments,
2430
- },
2431
- options,
2432
- });
2433
- return await client.signAndSubmitTransaction({
2434
- signer: account,
2435
- transaction,
2436
- });
2437
- }
2438
- export async function removeLiquidity<
2439
- T0 = any,
2440
- T1 = any,
2441
- T2 = any,
2442
- T3 = any,
2443
- >(
2444
- client: Aptos,
2445
- account: AptosAccount,
2446
- request: {
2447
- typeArguments: [MoveStructId, MoveStructId, MoveStructId, MoveStructId];
2448
- functionArguments: [bigint, bigint, bigint, bigint, bigint];
2449
- },
2450
- options?: InputGenerateTransactionOptions,
2451
- ): Promise<PendingTransactionResponse> {
2452
- const coder = defaultMoveCoder(client.config);
2453
- const transaction = await client.transaction.build.simple({
2454
- sender: account.accountAddress,
2455
- data: {
2456
- function:
2457
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool_scripts::remove_liquidity",
2458
- functionArguments: coder.encodeArray(request.functionArguments),
2459
- typeArguments: request.typeArguments,
2460
- },
2461
- options,
2462
- });
2463
- return await client.signAndSubmitTransaction({
2464
- signer: account,
2465
- transaction,
2466
- });
2467
- }
2468
- export async function swapExactIn<
2469
- T0 = any,
2470
- T1 = any,
2471
- T2 = any,
2472
- T3 = any,
2473
- T4 = any,
2474
- T5 = any,
2475
- >(
2476
- client: Aptos,
2477
- account: AptosAccount,
2478
- request: {
2479
- typeArguments: [
2480
- MoveStructId,
2481
- MoveStructId,
2482
- MoveStructId,
2483
- MoveStructId,
2484
- MoveStructId,
2485
- MoveStructId,
2486
- ];
2487
- functionArguments: [bigint, bigint];
2488
- },
2489
- options?: InputGenerateTransactionOptions,
2490
- ): Promise<PendingTransactionResponse> {
2491
- const coder = defaultMoveCoder(client.config);
2492
- const transaction = await client.transaction.build.simple({
2493
- sender: account.accountAddress,
2494
- data: {
2495
- function:
2496
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool_scripts::swap_exact_in",
2497
- functionArguments: coder.encodeArray(request.functionArguments),
2498
- typeArguments: request.typeArguments,
2499
- },
2500
- options,
2501
- });
2502
- return await client.signAndSubmitTransaction({
2503
- signer: account,
2504
- transaction,
2505
- });
2506
- }
2507
- export async function swapExactOut<
2508
- T0 = any,
2509
- T1 = any,
2510
- T2 = any,
2511
- T3 = any,
2512
- T4 = any,
2513
- T5 = any,
2514
- >(
2515
- client: Aptos,
2516
- account: AptosAccount,
2517
- request: {
2518
- typeArguments: [
2519
- MoveStructId,
2520
- MoveStructId,
2521
- MoveStructId,
2522
- MoveStructId,
2523
- MoveStructId,
2524
- MoveStructId,
2525
- ];
2526
- functionArguments: [bigint, bigint];
2527
- },
2528
- options?: InputGenerateTransactionOptions,
2529
- ): Promise<PendingTransactionResponse> {
2530
- const coder = defaultMoveCoder(client.config);
2531
- const transaction = await client.transaction.build.simple({
2532
- sender: account.accountAddress,
2533
- data: {
2534
- function:
2535
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool_scripts::swap_exact_out",
2536
- functionArguments: coder.encodeArray(request.functionArguments),
2537
- typeArguments: request.typeArguments,
2538
- },
2539
- options,
2540
- });
2541
- return await client.signAndSubmitTransaction({
2542
- signer: account,
2543
- transaction,
2544
- });
2545
- }
2546
- }
2547
- export namespace view {}
2548
- }
2549
-
2550
- export namespace weighted_pool_scripts {
2551
- export namespace entry {
2552
- export async function addLiquidity<
2553
- T0 = any,
2554
- T1 = any,
2555
- T2 = any,
2556
- T3 = any,
2557
- T4 = any,
2558
- T5 = any,
2559
- T6 = any,
2560
- T7 = any,
2561
- >(
2562
- client: Aptos,
2563
- account: AptosAccount,
2564
- request: {
2565
- typeArguments: [
2566
- MoveStructId,
2567
- MoveStructId,
2568
- MoveStructId,
2569
- MoveStructId,
2570
- MoveStructId,
2571
- MoveStructId,
2572
- MoveStructId,
2573
- MoveStructId,
2574
- ];
2575
- functionArguments: [
2576
- bigint,
2577
- bigint,
2578
- bigint,
2579
- bigint,
2580
- bigint,
2581
- bigint,
2582
- bigint,
2583
- bigint,
2584
- ];
2585
- },
2586
- options?: InputGenerateTransactionOptions,
2587
- ): Promise<PendingTransactionResponse> {
2588
- const coder = defaultMoveCoder(client.config);
2589
- const transaction = await client.transaction.build.simple({
2590
- sender: account.accountAddress,
2591
- data: {
2592
- function:
2593
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool_scripts::add_liquidity",
2594
- functionArguments: coder.encodeArray(request.functionArguments),
2595
- typeArguments: request.typeArguments,
2596
- },
2597
- options,
2598
- });
2599
- return await client.signAndSubmitTransaction({
2600
- signer: account,
2601
- transaction,
2602
- });
2603
- }
2604
- export async function createWeightedPool<
2605
- T0 = any,
2606
- T1 = any,
2607
- T2 = any,
2608
- T3 = any,
2609
- T4 = any,
2610
- T5 = any,
2611
- T6 = any,
2612
- T7 = any,
2613
- >(
2614
- client: Aptos,
2615
- account: AptosAccount,
2616
- request: {
2617
- typeArguments: [
2618
- MoveStructId,
2619
- MoveStructId,
2620
- MoveStructId,
2621
- MoveStructId,
2622
- MoveStructId,
2623
- MoveStructId,
2624
- MoveStructId,
2625
- MoveStructId,
2626
- ];
2627
- functionArguments: [bigint, bigint, bigint, bigint];
2628
- },
2629
- options?: InputGenerateTransactionOptions,
2630
- ): Promise<PendingTransactionResponse> {
2631
- const coder = defaultMoveCoder(client.config);
2632
- const transaction = await client.transaction.build.simple({
2633
- sender: account.accountAddress,
2634
- data: {
2635
- function:
2636
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool_scripts::create_weighted_pool",
2637
- functionArguments: coder.encodeArray(request.functionArguments),
2638
- typeArguments: request.typeArguments,
2639
- },
2640
- options,
2641
- });
2642
- return await client.signAndSubmitTransaction({
2643
- signer: account,
2644
- transaction,
2645
- });
2646
- }
2647
- export async function removeLiquidity<
2648
- T0 = any,
2649
- T1 = any,
2650
- T2 = any,
2651
- T3 = any,
2652
- T4 = any,
2653
- T5 = any,
2654
- T6 = any,
2655
- T7 = any,
2656
- >(
2657
- client: Aptos,
2658
- account: AptosAccount,
2659
- request: {
2660
- typeArguments: [
2661
- MoveStructId,
2662
- MoveStructId,
2663
- MoveStructId,
2664
- MoveStructId,
2665
- MoveStructId,
2666
- MoveStructId,
2667
- MoveStructId,
2668
- MoveStructId,
2669
- ];
2670
- functionArguments: [bigint, bigint, bigint, bigint, bigint];
2671
- },
2672
- options?: InputGenerateTransactionOptions,
2673
- ): Promise<PendingTransactionResponse> {
2674
- const coder = defaultMoveCoder(client.config);
2675
- const transaction = await client.transaction.build.simple({
2676
- sender: account.accountAddress,
2677
- data: {
2678
- function:
2679
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool_scripts::remove_liquidity",
2680
- functionArguments: coder.encodeArray(request.functionArguments),
2681
- typeArguments: request.typeArguments,
2682
- },
2683
- options,
2684
- });
2685
- return await client.signAndSubmitTransaction({
2686
- signer: account,
2687
- transaction,
2688
- });
2689
- }
2690
- export async function swapExactIn<
2691
- T0 = any,
2692
- T1 = any,
2693
- T2 = any,
2694
- T3 = any,
2695
- T4 = any,
2696
- T5 = any,
2697
- T6 = any,
2698
- T7 = any,
2699
- T8 = any,
2700
- T9 = any,
2701
- >(
2702
- client: Aptos,
2703
- account: AptosAccount,
2704
- request: {
2705
- typeArguments: [
2706
- MoveStructId,
2707
- MoveStructId,
2708
- MoveStructId,
2709
- MoveStructId,
2710
- MoveStructId,
2711
- MoveStructId,
2712
- MoveStructId,
2713
- MoveStructId,
2714
- MoveStructId,
2715
- MoveStructId,
2716
- ];
2717
- functionArguments: [bigint, bigint];
2718
- },
2719
- options?: InputGenerateTransactionOptions,
2720
- ): Promise<PendingTransactionResponse> {
2721
- const coder = defaultMoveCoder(client.config);
2722
- const transaction = await client.transaction.build.simple({
2723
- sender: account.accountAddress,
2724
- data: {
2725
- function:
2726
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool_scripts::swap_exact_in",
2727
- functionArguments: coder.encodeArray(request.functionArguments),
2728
- typeArguments: request.typeArguments,
2729
- },
2730
- options,
2731
- });
2732
- return await client.signAndSubmitTransaction({
2733
- signer: account,
2734
- transaction,
2735
- });
2736
- }
2737
- export async function swapExactOut<
2738
- T0 = any,
2739
- T1 = any,
2740
- T2 = any,
2741
- T3 = any,
2742
- T4 = any,
2743
- T5 = any,
2744
- T6 = any,
2745
- T7 = any,
2746
- T8 = any,
2747
- T9 = any,
2748
- >(
2749
- client: Aptos,
2750
- account: AptosAccount,
2751
- request: {
2752
- typeArguments: [
2753
- MoveStructId,
2754
- MoveStructId,
2755
- MoveStructId,
2756
- MoveStructId,
2757
- MoveStructId,
2758
- MoveStructId,
2759
- MoveStructId,
2760
- MoveStructId,
2761
- MoveStructId,
2762
- MoveStructId,
2763
- ];
2764
- functionArguments: [bigint, bigint];
2765
- },
2766
- options?: InputGenerateTransactionOptions,
2767
- ): Promise<PendingTransactionResponse> {
2768
- const coder = defaultMoveCoder(client.config);
2769
- const transaction = await client.transaction.build.simple({
2770
- sender: account.accountAddress,
2771
- data: {
2772
- function:
2773
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool_scripts::swap_exact_out",
2774
- functionArguments: coder.encodeArray(request.functionArguments),
2775
- typeArguments: request.typeArguments,
2776
- },
2777
- options,
2778
- });
2779
- return await client.signAndSubmitTransaction({
2780
- signer: account,
2781
- transaction,
2782
- });
2783
- }
2784
- }
2785
- export namespace view {}
2786
- }
2787
-
2788
- const MODULES = JSON.parse(
2789
- '[{"bytecode":"0xa11ceb0b060000000b01000a020a0603104f045f0c056b27079201f6010888036006e80319108104470cc804620faa050400020103010400050206010704010001000800010100000901020100000a01010100000b03000100030c010500010d06010100010905020100010e05080100030f0107000110090101000411090800021209050004130b0800011403000100020405040604070409040d04010b0001090000010302060c03010900010502050b00010900010c010101060c02010c02050a020b737461626c655f706f6f6c0d77656967687465645f706f6f6c046665657304636f696e067369676e6572077061636b616765076d616e6167657204436f696e0a6162736f72625f6665650762616c616e63650c7472795f72656769737465720c77697468647261775f666565187265736f757263655f6163636f756e745f61646472657373076465706f7369741569735f6163636f756e745f72656769737465726564177265736f757263655f6163636f756e745f7369676e65720872656769737465720d69735f617574686f72697a65640a616464726573735f6f660e69735f726f6c655f6d656d62657208776974686472617748271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af000000000000000000000000000000000000000000000000000000000000000193aa044a65a27bd89b163f8b3be3777b160b09a25c336643dcc2878dfd8f2a8d030800000000000000000a020c0b6665655f6d616e61676572126170746f733a3a6d657461646174615f763133010000000000000000104552525f554e415554484f52495a45440b4572726f7220436f64657300010762616c616e6365010100000300000105380011040b0038010201010000010311043802020200000007091104380320040811080c000e00380402030100000a180a00110a04080b0001080c02050d0b00110b0701110c0c020b020410051207002711080c030e030b013805020000000100","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"fees","friends":["0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool"],"exposed_functions":[{"name":"absorb_fee","visibility":"friend","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["0x1::coin::Coin<T0>"],"return":[]},{"name":"balance","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]}],"params":[],"return":["u64"]},{"name":"withdraw_fee","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u64"],"return":["0x1::coin::Coin<T0>"]}],"structs":[]}},{"bytecode":"0xa11ceb0b060000000801000e030e23053108073962089b016006fb014010bb02770cb2032d0000010100020003000400050206000700010001080002000309010300060901030002070101000407010100050701010001060c000105010104696e6974067369676e657209626173655f706f6f6c077061636b6167650b737461626c655f706f6f6c0d77656967687465645f706f6f6c076d616e616765720a696e697469616c697a650a616464726573735f6f660b696e697469616c697a656448271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af000000000000000000000000000000000000000000000000000000000000000193aa044a65a27bd89b163f8b3be3777b160b09a25c336643dcc2878dfd8f2a8d03080200000000000000030801000000000000000308000000000000000005201bf23f0881f8fa149500ff6b7a047f608967c028a8ad7a2100caa84833ce851d126170746f733a3a6d657461646174615f763163030000000000000000104552525f554e415554484f52495a4544000100000000000000194552525f5041434b4147455f554e494e495449414c495a4544000200000000000000194552525f4d414e414745525f554e494e495449414c495a45440000000001040001160b001101070321040605080702271102040b050d0701271103041005120700271104110511060200","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"init","friends":[],"exposed_functions":[{"name":"initialize","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":[]}],"structs":[]}},{"bytecode":"0xa11ceb0b060000000c01000c020c08031446055a26078001bf0308bf0460069f0579109806af010ac707060ccd07c5010d9209020f940908000401050106010701080209000a080001140600000b000100000c020000000d000300000e040000000f02050000100001000011000100001200050001150601000416020100031708090005180203000219040000011a0a050000010501060c010103060c0a020a0a02010c0206050a020205080102060c050108010106080109626173655f706f6f6c04666565730b737461626c655f706f6f6c0d77656967687465645f706f6f6c077061636b616765076163636f756e7404636f6465107265736f757263655f6163636f756e74067369676e6572076d616e61676572185265736f757263655369676e65724361706162696c69747920646572697665645f7265736f757263655f6163636f756e745f616464726573730b696e69745f6d6f64756c650b696e697469616c697a65640f7075626c6973685f7061636b6167650e726571756573745f7369676e6572187265736f757263655f6163636f756e745f61646472657373217265736f757263655f6163636f756e745f6465706c6f7965725f61646472657373177265736f757263655f6163636f756e745f7369676e65720a7369676e65725f636170105369676e65724361706162696c697479176372656174655f7265736f757263655f616464726573730a616464726573735f6f661d72657472696576655f7265736f757263655f6163636f756e745f6361700d69735f617574686f72697a6564137075626c6973685f7061636b6167655f74786e1d6372656174655f7369676e65725f776974685f6361706162696c69747948271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af000000000000000000000000000000000000000000000000000000000000000193aa044a65a27bd89b163f8b3be3777b160b09a25c336643dcc2878dfd8f2a8d05201bf23f0881f8fa149500ff6b7a047f608967c028a8ad7a2100caa84833ce851d03080300000000000000030801000000000000000308000000000000000003080200000000000000052048271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af0a020a097468616c6173776170126170746f733a3a6d657461646174615f76319a01040000000000000000184552525f5041434b4147455f554e415554484f52495a45440b4572726f7220436f6465730100000000000000174552525f5041434b4147455f494e495449414c495a4544000200000000000000194552525f5041434b4147455f554e494e495449414c495a45440003000000000000001c4552525f5041434b4147455f414444524553535f4d49534d4154434800000000020113080100000000010607000c000e0007061108020100000007270a0011090c010a012900200408050c0b00010702270a01110021041105150b00010701270b01110521041a051e0b00010701270a000700110a0c020b000b0212002d000202010000000311052900020301040100050d0b00110b0404050607032711070c030e030b010b02110c02040100010000080b00110b040405060703271107020501000000020705020601000000020700020703000100000a11020403050507042711052b001000110d020000000000010002000300","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"package","friends":["0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::fees","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool"],"exposed_functions":[{"name":"initialized","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":["bool"]},{"name":"publish_package","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","vector<u8>","vector<vector<u8>>"],"return":[]},{"name":"request_signer","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":["signer"]},{"name":"resource_account_address","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":["address"]},{"name":"resource_account_deployer_address","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":["address"]},{"name":"resource_account_signer","visibility":"friend","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":["signer"]}],"structs":[{"name":"ResourceSignerCapability","is_native":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"signer_cap","type":"0x1::account::SignerCapability"}]}]}},{"bytecode":"0xa11ceb0b060000000d0100160216200336810104b7012205d9016807c102ee0408af07800106af086d109c09e0010afc0a1b0c970bad020dc40d040fc80d060003010401050106010701080109000a000b020c030d000e0600000f08000010000009170700051c070003200401060104270701000000110000000012000100001300010100001400020000150003010000160400000018000500001900010400000000001a030100082200060009230705000124090a01060825000b000626000d01000228000f01000429110e01000a2a090100092b130500092c050300052d140d00032e15000106022f00020100073000010200000b080d0c0d0e0e0e0f101408020e0217150e151716180219021a1519161b151a161c0001010102010302060c03010803010c02030301080001060c010b050109000105010802010804010900010b060104010401070b06010900020708010302080303010a0202070b05010900090002010101090102090009010109020109030209010902020902090304696e69740b737461626c655f706f6f6c0d77656967687465645f706f6f6c09626173655f706f6f6c076163636f756e7404636f696e056576656e74066f7074696f6e06737472696e6709747970655f696e666f0b636f696e5f68656c706572077061636b6167650d66697865645f706f696e743634076d616e616765721842617365506f6f6c506172616d4368616e67654576656e740e42617365506f6f6c506172616d73044e756c6c0a696e697469616c697a650b696e697469616c697a65640769735f6e756c6c166d61785f737570706f727465645f646563696d616c7311706f6f6c5f746f6b656e5f737570706c79247365745f737761705f6665655f70726f746f636f6c5f616c6c6f636174696f6e5f6270730c4669786564506f696e74363422737761705f6665655f70726f746f636f6c5f616c6c6f636174696f6e5f726174696f1476616c69646174655f706f6f6c5f6173736574731176616c69646174655f737761705f666565046e616d6506537472696e670a707265765f76616c7565096e65775f76616c756513706172616d5f6368616e67655f6576656e74730b4576656e7448616e646c650b64756d6d795f6669656c64177265736f757263655f6163636f756e745f7369676e6572086672616374696f6e106e65775f6576656e745f68616e646c65187265736f757263655f6163636f756e745f6164647265737309747970655f6e616d65064f7074696f6e06737570706c7907657874726163740d69735f617574686f72697a6564036d756c066465636f646504757466380a656d69745f6576656e7408646563696d616c731469735f756e697175655f616e645f736f7274656448271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af00000000000000000000000000000000000000000000000000000000000000014dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee993aa044a65a27bd89b163f8b3be3777b160b09a25c336643dcc2878dfd8f2a8d030810270000000000000308d007000000000000030803000000000000000308010000000000000003080000000000000000030802000000000000000201080308e8030000000000000a022120737761705f6665655f70726f746f636f6c5f616c6c6f636174696f6e5f627073126170746f733a3a6d657461646174615f7631cb01040000000000000000104552525f554e415554484f52495a45440b4572726f7220436f64657301000000000000000f4552525f494e495449414c495a4544000200000000000000114552525f554e494e495449414c495a4544000300000000000000104552525f4250535f47545f313030303000000311706f6f6c5f746f6b656e5f737570706c79010100166d61785f737570706f727465645f646563696d616c7301010022737761705f6665655f70726f746f636f6c5f616c6c6f636174696f6e5f726174696f0101000002031b08041d031e030102021808031f0b0501080002020121010003000006111101200404050607032711090c000e0007010700110a0e00380012012d0102010300000003110c290102020100000004380138022102030100000002070602040100000f0638030c000d00380434020501040101122b0b0011100404050607042711010409050b0703270a0107002504100512070227110c2a010c020a021000140700111111120c030a010700110a0a020f00150b020f01070811130b030b01120038050206010001010005110c2a011000140207030000163e38060405080c00050738070c000b00040b090238080706240412080c01051638090706240c010b01041a0902380a20041f0902380b0427380c042508020902380d070624042d0902380e2004320902380c04360802380f070624043c09023810020803000000040b00070725020100010100000001000200","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"base_pool","friends":["0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::init","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool"],"exposed_functions":[{"name":"initialize","visibility":"friend","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":[]},{"name":"initialized","visibility":"friend","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":["bool"]},{"name":"is_null","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":[],"return":["bool"]},{"name":"max_supported_decimals","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["u8"]},{"name":"pool_token_supply","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]}],"params":[],"return":["u64"]},{"name":"set_swap_fee_protocol_allocation_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64"],"return":[]},{"name":"swap_fee_protocol_allocation_ratio","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"validate_pool_assets","visibility":"friend","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["bool"]},{"name":"validate_swap_fee","visibility":"friend","is_entry":false,"is_view":false,"generic_type_params":[],"params":["u64"],"return":["bool"]}],"structs":[{"name":"BasePoolParamChangeEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"name","type":"0x1::string::String"},{"name":"prev_value","type":"u64"},{"name":"new_value","type":"u64"}]},{"name":"BasePoolParams","is_native":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"swap_fee_protocol_allocation_ratio","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"},{"name":"param_change_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::base_pool::BasePoolParamChangeEvent>"}]},{"name":"Null","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]}]}},{"bytecode":"0xa11ceb0b0600000008010006020608030e3304410a054b3b0786019701089d02400cdd026c00000101010201030200020607000004000102000000050002020000020700050100020807080001040901010001090a0200020a070800020b070b00010c0a0200020402060408040b000c0001080001010a080008000508010a020a020508010a020a0201090001080101090101060801010a020206090006090001060800010502090009010b636f696e5f68656c7065720a636f6d70617261746f7209747970655f696e666f06526573756c7407636f6d706172651469735f756e697175655f616e645f736f727465640854797065496e666f07747970655f6f660b7374727563745f6e616d650869735f657175616c0b6d6f64756c655f6e616d650f6163636f756e745f616464726573730f69735f736d616c6c65725f7468616e48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af000000000000000000000000000000000000000000000000000000000000000100000000032e38000c0338010c070e0311030c050e0711030c090e050e0938020c010e0111052004140b01020e0311060c040e0711060c080e040e0838020c000e0011052004240b00020e0311070c020e0711070c060e020e0638030201010000010538040c000e0011080200","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"coin_helper","friends":[],"exposed_functions":[{"name":"is_unique_and_sorted","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]}],"params":[],"return":["bool"]}],"structs":[]}},{"bytecode":"0xa11ceb0b060000000f01001e021ebb0103d9018d0404e605960105fc06d60907d210f70f08c920a00106e921bf0210a824d0070af82bce020bc62e1a0ce02efc220ddc51380e94522e0fc25202000101020103010401050106010701080109000a000b000c020d030e040f0010060400010001000100010011000400010001000100010012060400010001000100010013080400010001000100010014060400010001000100010015080400010001000100010016060400010001000100010017040400010001000100010018070000190800001a0600001b0800001c00040001000100010001001d06040001000100010001021e04010001062a07000c3b0700034504010601024f05010001025105010001075e0402030100010276050100010894010700001f0001040000000000200201040000000000210304050000000000002205060500000000000023070804000000000024040904000000000025040a04000000000026040b040000000000270c0b040000000000280404000029040a00002b090d00002c040d0400000000002d040900002e08040400000000002f040904000000000030040b040000000000310d0e000032040a040000000000330100040000000000340f04040000000000350f040000360f04040000000000370f0404000000000038040a04000000000039061006000000000000003a111206000000000000003c04130400000000003d140404000000000b6f0417000270190901000e711d1e0002721f0401000973040901000374220401060275232401000977040a04000000000978040a01000b79042600067a270d00022828290100027b2a0401000c7c0413000c7d2b13000c7e2b1300017f2d2e01060580012d17000c81013213000c82011309000283013a240100098401043d00028501043d01000486013e09000929040a0007870104400203040c88013e1300078901430a020300078a014344020300028b01040d0100068c01450400068d01460900068e01470d000a8f01240401000c90011309000291014b0401000d92012d0a00099301090a00089501045101000996010413000e97015309000e9801530900089901040d0100079a015804020302079b01580402030012161e181e1a1e1b1e1c08162018201a201b201c2120222123201c1624161816251b251c0c162820292007162d2c2d212d2f2d302d31222c2d3320351e3531353118311a311b311c06163318331a331b331c363f3641384139413a183a1a3a1b3a1c3e183e1a3e1b3e1c2233383f393f1e204020222f223143354352253525524318431a431b431c3e350254035522304720483f4941040b0e0109000b0e0109010b0e0109020b0e010903010b0e010b0c04090009010902090306060c0b0e0109000b0e0109010b0e0109020b0e010903030305030b0e0109040003050303010b0e0109040403030303050b0e0109000b0e0109010b0e0109020b0e0109030b0104090009010902090301030101010a0301060b0504090009010902090301080f030a03030302060c03010b0e010905020b0e01090403020b0e0109040b0e01090501081002060b05040900090109020903010c0a030a0303030303030f030b0e010b0c040900090109020903070b050409000901090209030f040900090109020903010501090001060b0e01090001090101090201090302060a0303010f02070b0e0109000b0e010900010b0c040900090109020903010b0004090009010902090302070b1101090009000203060b12010900010b0e0109002e01030a030b12010b0c0409000901090209030b13010b0c0409000901090209030b0e010b0c040900090109020903081008100b070409000901090209030a030301030303050303070b11010b060409000901090209030101010b0e0109000b0e0109010b0e0109020b0e010903030303030b13010b0c0409000901090209030b15010b0c0409000901090209030308100b0e010b0c0409000901090209030b12010b0c040900090109020903081006080b0b050409000901090209030b13010b0c0409000901090209030b12010b0c0409000901090209030a030b0e010b0c040900090109020903050c0810010c010a0205060c080f080f0201030b130109000b150109000b12010900010b150109000208100810010b0604090009010902090301060c010b11010900010b04040900090109020903010b0d04090009010902090301080a02081003010b02040900090109020903040904090109020903010904040900090409020903040900090109040903040900090109020904070b0e0109040b0e0109040b0e010904070b05040904090109020903070b05040900090409020903070b05040900090109040903070b0504090009010902090402070b0e010900030c0101010c070b030409000901090209030b0e0109000b0e0109010b0e0109020b0e010903070b0504090009010902090305060c02020a03010202030302080f0808010b1402090009010203080f0106080902060b1402090009010900010609010207080f080f0106080f0306080f03031403030303030303030303030303070b03040900090109020903070b050409000901090209030303030305050a0303060808060809030c030303030308100b0e0109000b0e0109010b0e0109020b0e010903070b0504090009010902090303020b0e010900060b130109000301070b05040900090109020903030207080b0303070b030409000901090209030305030810070b05040900090109020903032001010303030303030a03030303030b0e01090503030101010101010101070b05040900090109020903070b0504090009010902090303050308160816060a030108160109050503030303060a0305090009010902090309040509000901090209030905250103030a030103030303030303030303030b0e01090503030101010101010101070b05040900090109020903070b05040900090109020903030303050308160816060a03030a03070809080f03070b1402090009010900090104696e69740b737461626c655f706f6f6c076163636f756e7404636f696e056576656e74066d6174683634067369676e657206737472696e67057461626c6509747970655f696e666f09626173655f706f6f6c0466656573077061636b6167650d66697865645f706f696e743634076d616e616765720b737461626c655f6d617468114164644c69717569646974794576656e7409466c6173686c6f616e0e466c6173686c6f616e4576656e740f466c6173686c6f616e48656c7065721452656d6f76654c69717569646974794576656e740a537461626c65506f6f6c17537461626c65506f6f6c4372656174696f6e4576656e7410537461626c65506f6f6c4576656e74730e537461626c65506f6f6c496e666f10537461626c65506f6f6c4c6f6f6b75701a537461626c65506f6f6c506172616d4368616e67654576656e7410537461626c65506f6f6c506172616d730f537461626c65506f6f6c546f6b656e09537761704576656e7404436f696e0d6164645f6c6971756964697479126372656174655f737461626c655f706f6f6c0f6465706f7369745f746f5f706f6f6c11657874726163745f66726f6d5f706f6f6c09666c6173686c6f616e11666c6173686c6f616e5f6665655f6270731c666c6173686c6f616e5f68656c7065725f696e697469616c697a6564196765745f707265636973696f6e5f6d756c7469706c69657273066765745f78700a696e697469616c697a650b696e697469616c697a656406537472696e670d6c705f6e616d655f62795f69640d6c705f73686f72745f6e616d650c6e6578745f706f6f6c5f69640d7061795f666c6173686c6f616e0f706f6f6c5f616d705f666163746f720d706f6f6c5f62616c616e63657309706f6f6c5f696e666f0b706f6f6c5f6c6f636b65641072656d6f76655f6c69717569646974790e7365745f616d705f666163746f721d7365745f64656661756c745f706f6f6c5f737761705f6665655f627073157365745f666c6173686c6f616e5f6665655f627073157365745f706f6f6c5f737761705f6665655f62707312737461626c655f706f6f6c5f6578697374730d737761705f65786163745f696e0e737761705f65786163745f6f75740c4669786564506f696e7436340e737761705f6665655f726174696f127570646174655f706f6f6c5f6c6f6f6b757008616d6f756e745f3008616d6f756e745f3108616d6f756e745f3208616d6f756e745f33156d696e7465645f6c705f636f696e5f616d6f756e74066c6f636b656410666c6173686c6f616e5f6576656e74730b4576656e7448616e646c65156275726e65645f6c705f636f696e5f616d6f756e740761737365745f300761737365745f310761737365745f320761737365745f330a616d705f666163746f7215707265636973696f6e5f6d756c7469706c696572731e696e76657273655f6e6567617465645f737761705f6665655f726174696f13706f6f6c5f746f6b656e5f6d696e745f6361700e4d696e744361706162696c69747913706f6f6c5f746f6b656e5f6275726e5f6361700e4275726e4361706162696c6974791072657365727665645f6c705f636f696e066576656e74730763726561746f720c737761705f6665655f62707314706f6f6c5f6372656174696f6e5f6576656e7473146164645f6c69717569646974795f6576656e74731772656d6f76655f6c69717569646974795f6576656e74730b737761705f6576656e747313706172616d5f6368616e67655f6576656e74730862616c616e6365730e6c705f636f696e5f737570706c790c6e616d655f746f5f706f6f6c055461626c650a69645f746f5f6e616d65076e6578745f6964046e616d650a707265765f76616c7565096e65775f76616c75651664656661756c745f737761705f6665655f726174696f0b64756d6d795f6669656c64066964785f696e076964785f6f757409616d6f756e745f696e0a616d6f756e745f6f75740a6665655f616d6f756e740e706f6f6c5f62616c616e63655f300e706f6f6c5f62616c616e63655f310e706f6f6c5f62616c616e63655f320e706f6f6c5f62616c616e63655f33187265736f757263655f6163636f756e745f616464726573730576616c756511636f6d707574655f696e76617269616e74056d6572676511706f6f6c5f746f6b656e5f737570706c790a656d69745f6576656e74046d696e7410467265657a654361706162696c6974791476616c69646174655f706f6f6c5f6173736574730769735f6e756c6c177265736f757263655f6163636f756e745f7369676e657204757466381264657374726f795f667265657a655f636170036f6e65067375625f6670066469765f6670106e65775f6576656e745f68616e646c650a616464726573735f6f66036d756c066465636f64650765787472616374166d61785f737570706f727465645f646563696d616c7308646563696d616c7303706f77036e6577086672616374696f6e08636f6e7461696e7306626f72726f770673796d626f6c06617070656e64066c656e6774680a7375625f737472696e670a6162736f72625f666565116465636f64655f726f756e645f646f776e046275726e0d69735f617574686f72697a65641176616c69646174655f737761705f6665650854797065496e666f07747970655f6f6622737761705f6665655f70726f746f636f6c5f616c6c6f636174696f6e5f726174696f1163616c635f6f75745f676976656e5f696e1163616c635f696e5f676976656e5f6f757409747970655f6e616d65067570736572740361646448271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af00000000000000000000000000000000000000000000000000000000000000014dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee993aa044a65a27bd89b163f8b3be3777b160b09a25c336643dcc2878dfd8f2a8dfb6e709add23c710c40e4844d889938f703719f72d2d4439ee682d67f07a15c5030810270000000000000308010000000000000003080a000000000000000308f40100000000000003082c01000000000000030803000000000000000308920100000000000003089101000000000000030894010000000000000308930100000000000003089001000000000000030807000000000000000308080000000000000003080500000000000000030864000000000000000308c80000000000000003080600000000000000030809000000000000000308040000000000000003080000000000000000030802000000000000000201080a0209085448414c412d4c500a02040353503a0a0202012d0a0204032e2e2e0a020b0a616d705f666163746f720a02151464656661756c745f737761705f6665655f6270730a021211666c6173686c6f616e5f6665655f6270730a020d0c737761705f6665655f627073126170746f733a3a6d657461646174615f7631bb07130000000000000000104552525f554e415554484f52495a45440b4572726f7220636f64657301000000000000000f4552525f494e495449414c495a4544000200000000000000114552525f554e494e495449414c495a4544000300000000000000164552525f535441424c455f504f4f4c5f4558495354530004000000000000001a4552525f535441424c455f504f4f4c5f4e4f545f455849535453000500000000000000234552525f535441424c455f504f4f4c5f494e56414c49445f504f4f4c5f415353455453000600000000000000284552525f535441424c455f504f4f4c5f494e56415249414e545f4e4f545f494e4352454153494e47000700000000000000224552525f535441424c455f504f4f4c5f494e53554646494349454e545f494e505554000800000000000000264552525f535441424c455f504f4f4c5f494e53554646494349454e545f4c4951554944495459000900000000000000164552525f535441424c455f504f4f4c5f4c4f434b4544002c01000000000000274552525f535441424c455f504f4f4c5f414d505f464143544f525f4f55545f4f465f424f554e440064000000000000001c4552525f535441424c455f504f4f4c5f494e56414c49445f53574150009001000000000000274552525f535441424c455f504f4f4c5f464c4153484c4f414e5f554e494e495449414c495a4544009101000000000000284552525f535441424c455f504f4f4c5f464c4153484c4f414e5f494e56414c49445f414d4f554e540092010000000000002c4552525f535441424c455f504f4f4c5f464c4153484c4f414e5f494e53554646494349454e545f5245504159009301000000000000254552525f535441424c455f504f4f4c5f464c4153484c4f414e5f4e4f545f4f4e474f494e47009401000000000000254552525f535441424c455f504f4f4c5f464c4153484c4f414e5f494e56414c49445f46454500c800000000000000204552525f535441424c455f504f4f4c5f494e56414c49445f535741505f46454500f401000000000000124552525f4449564944455f42595f5a45524f00000909706f6f6c5f696e666f0101000c6e6578745f706f6f6c5f69640101000d6c705f6e616d655f62795f69640101000d706f6f6c5f62616c616e6365730101000e737761705f6665655f726174696f0101000f706f6f6c5f616d705f666163746f7201010011666c6173686c6f616e5f6665655f62707301010012737461626c655f706f6f6c5f657869737473010100196765745f707265636973696f6e5f6d756c7469706c696572730101000002053e033f034003410342030102043e033f03400341030202043e033f034003410303020343012403440b11010b020409000901090209030402053e033f0340034103460305020c470b0e010900480b0e010901490b0e0109024a0b0e0109034b034c0a033c08104d08104e0b12010b0c040900090109020903500b13010b0c040900090109020903520b0e010b0c040900090109020903530b0704090009010902090306020754053e033f034003410342035503070205560b11010b06040900090109020903570b11010b00040900090109020903580b11010b04040900090109020903590b11010b0d0409000901090209035a0b1101080a0802045b0a034c0a034b035c030902035d0b1402080f08085f0b140203080f60030a020361080f620363030b02026408105a0b1101080a0c020165010d020a66036703680369036a036b036c036d036e034b030516001607160616031605340536053705380116021604160d16000100030305091566110a040305050714273800200409050b071127111d3c000c0e0a0e3700140c0a0e0038010c060e0138020c070e0238030c080e0338040c090a0e2e38050c040e040a0a111f0c0f0a0e36010b0038060a0e36020b0138070a0e36030b0238080a0e36040b0338090a0e2e38050c050e050b0a111f0c0b0a0b0a0f24044305470b0e01071027380a4d0b0b0a0f17180b0f1a340c0c0a0e360536060b060b070b080b090a0c3901380b0b0c0a0e3707380c0c0d0b0e2e09380d0b0d0201010002090b25a602110a040305070b0001071427380e040a050e0b0001070d27380f20041205160b00010705270a0506000000000000000024041f0a050700250c060521090c060b06042405280b00010704270e0138010c200e0238020c210e0338030c220e0438040c230a2006000000000000000024043d0a21060000000000000000240c11053f090c110b11044205460b0001070d273810045b0a220600000000000000002104510a23060000000000000000210c190553090c190b190456055a0b0001070d27058201381104700a220600000000000000002404660a23060000000000000000210c1a0568090c1a0b1a046b056f0b0001070d270582010a220600000000000000002404790a23060000000000000000240c1b057b090c1b0b1b047e0582010b0001070d27111d0c3111260c320b312b0b0c2b0e3238120716112707150838130c290c250c240b2538140b240b290c2e0c2d0a2b1008140c33112a0c2a0a2a0b2a0a33112b112c0c2738150c2f070e0e2e380c0c300b010c1c0b020c1d0b030c1e0b040c1f0a050c070b2f0c080b2e0c090b2d0c0a0b300c0b0b330c0c0b270c0d0e3238160e3238170e3238180e3238190e32381a39020c0e0b1c0b1d0b1e0b1f0b070b080b0c0b0d0b090b0a0b0b0b0e39000c2c0e2c38050c0f0e0f0b05111f340c260a26070e2404e80105ee010b2b010b0001070c270d2c360536080c180b200c100b210c120b220c130b230c140b00112e0c150a260c160b2b1008140700112f11300c170b180b150b100b120b130b140b160b173903381b0b26070e170e2c3707380c0c280e2c08380d0e320b2c3f000e320907010e32381c39043f040b2802020000010504240a0106000000000000000021040a0b003c0536090b02381d05230a010601000000000000002104140b003c06360a0b02381d05230b0106020000000000000021041e0b003c07360b0b02381d05230b003c08360c0b02381d02030000010539610a010600000000000000002104180b003c050c060a020a063709381e23040e05120b0601070c270b0636090b02381f0c05055f0a010601000000000000002104300b003c060c070a020a07370a381e230426052a0b0701070c270b07360a0b02381f0c04055d0b010602000000000000002104480b003c070c080a020a08370b381e23043e05420b0801070c270b08360b0b02381f0c03055b0b003c080c090a020a09370c381e23045205560b0901070c270b09360c0b02381f0c030b030c040b040c050b05020401000203053b9101110a040305050714273800200409050b0711270a00060000000000000000240412080c0405160a01060000000000000000240c040b04041b080c05051f0a02060000000000000000240c050b050424080c0605280a03060000000000000000240c060b06042b052d070727111d0c0e0a0e3c000c0d0a000a0d37013801250439053d0b0d010707270a010a0d3702380225044405480b0d010707270a020a0d3703380325044f05530b0d010707270a030a0d3704380425045a055e0b0d010707270a0d36010a0038200c090a0d36020a0138210c0a0a0d36030a0238220c0b0b0d36040a0338230c0c3824047c0b0e3c040c08080b08360d1505870111260c070e070c0f0a0f0807010b0f381c39043f040b090b0a0b0b0b0c0b000b010b020b033909020501000103040a382404030505070a27111d3d04370e1402060000000403111d3b0402070100003c2c400900000000000000000c0111320c000d01060a000000000000000a0038251734113444090d01060a000000000000000a003826173411344409381020041f0d01060a000000000000000a003827173411344409381120042a0d01060a000000000000000b0038281734113444090b0102080000000b39400900000000000000000c010d010a00370138010a00370f0600000000000000004209141844090d010a00370238020a00370f06010000000000000042091418440938102004260d010a00370338030a00370f06020000000000000042091418440938112004350d010a00370438040b00370f06030000000000000042091418440905370b00010b010209030000261c110a200404050607012711350409050b07142711260c000e003829382a06000000000000000012092d090e000702070011370e00381a120b2d0b020a0100000403111d290b020b010001094213111d2b090c010a01100d0a00382b0409050d0b01010712270b01100d0b00382c14020c0000000d31071711270c000d00382d113b0d0007181127113b0d00382e113b38102004210d0007181127113b0d00382f113b38112004210d0007181127113b0d003830113b0e00113c06200000000000000024042f0e00060000000000000000061d00000000000000113d0c000d0007191127113b0b00020d010001090405111d2b09100e14020e010002030548c101110a0403050507142738000408050a070927111d0c180a183c040c120b043a090c080c070c060c050e0038010c140e0138020c150e0238030c160e0338040c170a12370e140c110a050600000000000000002404440a050a110c09350b0935180700351a340c0d0b140a050a0d1626043c05400b12010706270d000b0d382038310a060600000000000000002404630a060a110c0a350b0a35180700351a340c0e0b150a060a0e1626045b055f0b12010706270d010b0e382138320a07060000000000000000240482010a070a110c0b350b0b35180700351a340c0f0b160a070a0f1626047a057e0b12010706270d020b0f382238330a080600000000000000002404a1010a080b110c0c350b0c35180700351a340c100b170a080a101626049901059d010b12010706270d030b10382338340b183c000c130a1336010b0038060a1336020b0138070a1336030b0238080b1336040b033809090a12360d150b1236100b050b060b070b08390a3835020f010001050405111d3d003700140210010001050404111d3d0038050211010001094939111d2b090c040a0410100a0038360409050d0b04010712270b0410100b0038370c03400900000000000000000c010a03101141090c050600000000000000000c020a020a05230431051f0d010a0310110a024209140a0310120a024209141844090b02060100000000000000160c02051a0b010a031013140b03101414021200000103040a38242004050902111d3d04370d1402130100030305094a5e110a040305050714273800200409050b071127111d3c000c0b0e0038380c05380a0c0c0a050b0c11370c060a060a0b37013801112f113f0c010a060a0b37023802112f113f0c020a060a0b37033803112f113f0c030b060a0b37043804112f113f0c040a0b36010a0138200c070a0b36020a0238210c080a0b36030a0338220c090a0b36040a0438230c0a0b000a0b371138390a0b360536120b010b020b030b040b05390b383a0b0b2e09380d0b070b080b090b0a021401040205094c340b00114104040506071327110a0409050b0714270a010600000000000000002404140a010700250c020516090c020b020419051b070427111d3c000c030a033700140c040a010a033600150a0336053613071a11270b040b01120a383b0b032e09380d02150104010b4d2a0b00114104040506071327110a0409050b0701270a011142040f0511070f27111d2a0b0c020a021008140700112f11300c030a01070011370a020f08150b020f18071b11270b030b01120a383b0216010402030b4e290b0011410404050607132738240409050b070a270a0107002304100512070827111d0c040a043c040c020a02370e140c030a010b02360e150b042a0b0f18071c11270b030b01120a383b0217010401054f370b00114104040506071327110a0409050b0714270a011142040f0511070f27111d3c000c030a033714140700112f11300c040a01070011370a03361415112a0c020a020b020a03371414112b112c0a033615150b0336053613071d11270b040b01120a383b02180100000403111d3b00021901000303050950fb01110a040305050714273800200409050b0711270e00381e0c0a0a0a0600000000000000002404130515070b27111d0c1c0a1c3c000c19383c0c1e383d0c1f0a1e0a1f220426383e200c010528090c010b01042e383f200c020530090c020b02043305370b1901070e270a1e3840210a1e3841210a1e3842210b1e3843210c140c130c120c110a110a121e0a131e0b141e045005540b1901070e270a1f3840210a1f3841210a1f3842210b1f3843210c180c170c160c150a150a161e0a171e0b181e046d05710b1901070e270a193714140a0a112f11300c1d11440a1d112f11300c1b0a0a0a1d170c0b0d000b1b381f38440b11048a010600000000000000000c05059a010b12048f010601000000000000000c040598010b130494010602000000000000000c030596010603000000000000000c030b030c040b040c050b050c0f0b1504a1010600000000000000000c0805b1010b1604a6010601000000000000000c0705af010b1704ab010602000000000000000c0605ad010603000000000000000c060b060c070b070c080b080c100a192e38050c090e090c200b0b0a19370f0a0f420914180c0d0a193700140a0f0a100b0d0b2011450b19370f0a104209141a0c0c0a1c0a0f0b0038450a1c0a100a0c38460c0e0b1c3c000c1a0a1a360536160b0f0b100b0a0b0c0b1d0a1a370138010a1a370238020a1a370338030a1a370438040a1a370014390c38470b1a2e09380d0b0e021a01000303050956af02110a040305050714273800200409050b0711270e00381e0c210a010600000000000000002404130515070e270a2106000000000000000024041a051c070e27111d0c220a223c000c1d383c0c24383d0c250a240a2522042d383e200c02052f090c020b020435383f200c060537090c060b06043a053e0b1d01070e270a243840210a243841210a243842210b243843210c180c170c160c150a150a161e0a171e0b181e0457055b0b1d01070e270a253840210a253841210a253842210b253843210c1c0c1b0c1a0c190a190a1a1e0a1b1e0b1c1e047405780b1d01070e270b15047d0600000000000000000c09058d010b160482010601000000000000000c08058b010b170487010602000000000000000c070589010603000000000000000c070b070c080b080c090b090c130b190498010600000000000000000a1d370138010c040c0305b8010b1a04a1010601000000000000000a1d370238020c0d0c0c05b4010b1b04aa010602000000000000000a1d370338030c0b0c0a05b0010603000000000000000a1d370438040c0b0c0a0b0a0b0b0c0d0c0c0b0c0b0d0c040c030b030b040c1f0c140a010b1f2304c10105c5010b1d01070c270a1d2e38050c050e050c260a010a1d370f0a14420914180c110a1d3700140a130a140b110b2611460a1d370f0a134209141a0c0f0b1d3715140a0f112f11300c0e0a0e0b212504ee0105f001070b270a0e0b0f170c2311440a23112f11300c200a0e0a20170c100d000b20381f38440a220a130d000b10381f38450a220a140a0138460c120b223c000c1e0a1e360536160b130b140b0e0b010b230a1e370138010a1e370238020a1e370338030a1e370438040a1e370014390c38470b1e2e09380d0b000b12021b010001050405111d3d00371414021c000001095743400900000000000000000c020d020a003701380144090d020a0037023802440938102004140d020a00370338034409381120041c0d020a00370438044409111d2a090c0338480c040a030f100a040b020a00370f140b00370014380a120838490b0104400a030f0d0a03100e140b04384a0a03100e14060100000000000000160b030f0e1505420b03010205040500050105020503050b070105080b000700030003010505090109020302090008000801080208030509070207040b0105060507070300160116021603160416051606160716091601340236033704380a160b160c160f1615161616171619161a161b16000000","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"stable_pool","friends":["0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::init"],"exposed_functions":[{"name":"add_liquidity","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>"],"return":["0x1::coin::Coin<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolToken<T0, T1, T2, T3>>"]},{"name":"create_stable_pool","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>","u64"],"return":["0x1::coin::Coin<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolToken<T0, T1, T2, T3>>"]},{"name":"flashloan","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["u64","u64","u64","u64"],"return":["0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::Flashloan<T0, T1, T2, T3>"]},{"name":"flashloan_fee_bps","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["u64"]},{"name":"get_precision_multipliers","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["vector<u64>"]},{"name":"initialize","visibility":"friend","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":[]},{"name":"initialized","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":["bool"]},{"name":"lp_name_by_id","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["u64"],"return":["0x1::string::String"]},{"name":"next_pool_id","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["u64"]},{"name":"pay_flashloan","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::Flashloan<T0, T1, T2, T3>"],"return":[]},{"name":"pool_amp_factor","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["u64"]},{"name":"pool_balances","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["vector<u64>"]},{"name":"pool_info","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["0x1::string::String"],"return":["vector<u64>","u64","u64"]},{"name":"remove_liquidity","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolToken<T0, T1, T2, T3>>"],"return":["0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>"]},{"name":"set_amp_factor","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64"],"return":[]},{"name":"set_default_pool_swap_fee_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64"],"return":[]},{"name":"set_flashloan_fee_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64"],"return":[]},{"name":"set_pool_swap_fee_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64"],"return":[]},{"name":"stable_pool_exists","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["bool"]},{"name":"swap_exact_in","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<T4>"],"return":["0x1::coin::Coin<T5>"]},{"name":"swap_exact_out","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<T4>","u64"],"return":["0x1::coin::Coin<T4>","0x1::coin::Coin<T5>"]},{"name":"swap_fee_ratio","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]}],"structs":[{"name":"AddLiquidityEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"},{"name":"minted_lp_coin_amount","type":"u64"}]},{"name":"Flashloan","is_native":false,"abilities":[],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"}]},{"name":"FlashloanEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"}]},{"name":"FlashloanHelper","is_native":false,"abilities":["key"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"locked","type":"bool"},{"name":"flashloan_fee_bps","type":"u64"},{"name":"flashloan_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::FlashloanEvent<T0, T1, T2, T3>>"}]},{"name":"RemoveLiquidityEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"},{"name":"burned_lp_coin_amount","type":"u64"}]},{"name":"StablePool","is_native":false,"abilities":["key"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"asset_0","type":"0x1::coin::Coin<T0>"},{"name":"asset_1","type":"0x1::coin::Coin<T1>"},{"name":"asset_2","type":"0x1::coin::Coin<T2>"},{"name":"asset_3","type":"0x1::coin::Coin<T3>"},{"name":"amp_factor","type":"u64"},{"name":"precision_multipliers","type":"vector<u64>"},{"name":"swap_fee_ratio","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"},{"name":"inverse_negated_swap_fee_ratio","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"},{"name":"pool_token_mint_cap","type":"0x1::coin::MintCapability<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolToken<T0, T1, T2, T3>>"},{"name":"pool_token_burn_cap","type":"0x1::coin::BurnCapability<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolToken<T0, T1, T2, T3>>"},{"name":"reserved_lp_coin","type":"0x1::coin::Coin<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolToken<T0, T1, T2, T3>>"},{"name":"events","type":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolEvents<T0, T1, T2, T3>"}]},{"name":"StablePoolCreationEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"creator","type":"address"},{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"},{"name":"minted_lp_coin_amount","type":"u64"},{"name":"swap_fee_bps","type":"u64"}]},{"name":"StablePoolEvents","is_native":false,"abilities":["store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"pool_creation_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolCreationEvent<T0, T1, T2, T3>>"},{"name":"add_liquidity_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::AddLiquidityEvent<T0, T1, T2, T3>>"},{"name":"remove_liquidity_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::RemoveLiquidityEvent<T0, T1, T2, T3>>"},{"name":"swap_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::SwapEvent<T0, T1, T2, T3>>"},{"name":"param_change_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolParamChangeEvent>"}]},{"name":"StablePoolInfo","is_native":false,"abilities":["copy","drop","store"],"generic_type_params":[],"fields":[{"name":"balances","type":"vector<u64>"},{"name":"precision_multipliers","type":"vector<u64>"},{"name":"amp_factor","type":"u64"},{"name":"lp_coin_supply","type":"u64"}]},{"name":"StablePoolLookup","is_native":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"name_to_pool","type":"0x1::table::Table<0x1::string::String, 0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolInfo>"},{"name":"id_to_name","type":"0x1::table::Table<u64, 0x1::string::String>"},{"name":"next_id","type":"u64"}]},{"name":"StablePoolParamChangeEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"name","type":"0x1::string::String"},{"name":"prev_value","type":"u64"},{"name":"new_value","type":"u64"}]},{"name":"StablePoolParams","is_native":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"default_swap_fee_ratio","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"},{"name":"param_change_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::stable_pool::StablePoolParamChangeEvent>"}]},{"name":"StablePoolToken","is_native":false,"abilities":[],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"SwapEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"idx_in","type":"u64"},{"name":"idx_out","type":"u64"},{"name":"amount_in","type":"u64"},{"name":"amount_out","type":"u64"},{"name":"fee_amount","type":"u64"},{"name":"pool_balance_0","type":"u64"},{"name":"pool_balance_1","type":"u64"},{"name":"pool_balance_2","type":"u64"},{"name":"pool_balance_3","type":"u64"},{"name":"amp_factor","type":"u64"}]}]}},{"bytecode":"0xa11ceb0b0600000008010008020806030e23043108053924075d6f08cc01400c8c023200000101010200030108040100010004000101000205030400010604060100010703010100030907080100010a09010100020503050405050503060c05030002010501060c0105010900010102060c03010b0001090002050b000109000c666565735f7363726970747304636f696e067369676e657204666565730c7472616e736665725f6665650a616464726573735f6f661569735f6163636f756e745f7265676973746572656408726567697374657204436f696e0c77697468647261775f666565076465706f73697448271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af00000000000000000000000000000000000000000000000000000000000000010001040002180a0011010c040a040a0121040c0b043800200c03050e090c030b0304120a0038010b010b000b02380238030200","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"fees_scripts","friends":[],"exposed_functions":[{"name":"transfer_fee","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","address","u64"],"return":[]}],"structs":[]}},{"bytecode":"0xa11ceb0b060000000f01001e021edd0203fb02ea0404e507c80105ad09f20d079f17a61208c529a00106e52aac0210912db6070ac734f8030bbf381a0cd938e2280dbb61320eed612a0f976202000101020103010401050106010701080109000a000b000c020d030e040f00100608000100010001000100010001000100010011000800010001000100010001000100010001001206080001000100010001000100010001000100130808000100010001000100010001000100010014060800010001000100010001000100010001001506080001000100010001000100010001000100160000001700000018000000190000001a0000001b0000001c0000001d0000001e0000001f00000020000000210000002200000023000000240000002500000026000000270000002800000029080800010001000100010001000100010001002a060800010001000100010001000100010001002b040800010001000100010001000100010001002c0700002d0800002e0600002f08000030000800010001000100010001000100010001023104010001053c07000c4b0700035704010601026d05010001026f05010001067d040203010001028c0105010001079b010700099d010000003200010800000000000000000033020308000000000000000000340405090000000000000000000035060709000000000000000000003608090800000000000000000037050a0800000000000000000038050b0800000000000000000039050a0100003a050500003b050b00003d0a0c00003e050c080000000000000000003f050a000040090508000000000000000000410d0e0800000000000000000042050f08000000000000000000430c10000044050b0800000000000000000045030008000000000000000000461105000047110508000000000000000000481105080000000000000000004907120a00000000000000000000004a13140a00000000000000000000004c0515080000000000000000004d0a0c00004e0b05080000000000000000004f050b0800000000000000000b84010518000285011a0a0100098601050a01000e87011f20000288012122010002890123050100038a0125050106028b0126220100098d01050b0400000000098e01050b01000b8f01052d000c90010515000c91012e15000c92012e15000e93012f15000c9401150a00059501300c00023a3132010002960133050100019701353601060498013518000c99013a15000c9a01150a00079c0105440100093b050b00069e01055a0203040c9f015c150006a0015e0b02030006a1015e5f02030002a201050c010005a30160050005a401610a0005a501620c000aa601220501000ea701670a0002a8010522010002a901680501000daa01350b0009ab010a0b0009ac010515000ead016e0a000eae016e0a000caf01150a0008b0017305010007b101050c010006b201750502030206b301750502030011171d191d1b1d1c1d1d0e171e1e2019201b201c201d2119211b211c211d2224231e1a1724281b170729072a072b072c251c251d0b172d1e2e1e2f342f242f372f382f3922342f3b213d1d3d203d0617331933453346334733483349334a334b334c334d334e334f3350335133523353335433553356335733583559355b375b385b3919391b391c391d3d193d1b3d1c3d1d223b252b252c375938591d1e3f1c3f1d401e223722390f17333d336d253d256d331b331c331d3d3d026f037022384772481e49594a5b040b210109000b210109010b210109020b21010903050b21010b2008090009010902090309040905090609070b210109000b210109010b210109020b2101090305060c0b210109000b210109010b210109020b21010903010b21010b2008090009010902090309040905090609070305030b210109080003050303010b210109080403030303050b210109000b210109010b210109020b210109030b0108090009010902090309040905090609070103010101082201060b190809000901090209030904090509060907010a03020a030a03030a030a030302060c03010b21010909020b2101090803020b210109080b21010909010823140103070b2101090203070b21010903030303030a030a03030b21010b20080900090109020903090409050906090703070b1908090009010902090309040905090609070b210109000b210109010b210109020b210109030a030809000901090209030904090509060907010501090001060b21010900010901010902010903010b20080900090109020903090409050906090703060a03060a030302030a0302070b2101090003010b2101090002070b210109000b21010900010b00080900090109020903090409050906090702070b2401090009000203060b250109002d010b210109010b210109020b21010903030303030b21010b20080900090109020903090409050906090708230823010b25010b2008090009010902090309040905090609070b26010b2008090009010902090309040905090609070b1b08090009010902090309040905090609070101010101010b21010900030303030a030b26010b2008090009010902090309040905090609070b28010b2008090009010902090309040905090609070308230b21010b2008090009010902090309040905090609070b25010b20080900090109020903090409050906090708230b1908090009010902090309040905090609070b26010b2008090009010902090309040905090609070b25010b2008090009010902090309040905090609070b21010b2008090009010902090309040905090609070c0823030303030a03040900090109020903010904010905010906010907010c020823082302060a03060a03010a0205060c082208220201030b260109000b280109000b25010900010b28010900010b1a080900090109020903090409050906090701060c010b24010900010b040809000901090209030904090509060907010b05080900090109020903090409050906090701081e02082303010b0208090009010902090309040905090609070809080901090209030904090509060907010908080900090809020903090409050906090708090009010908090309040905090609070809000901090209080904090509060907070b210109080b210109080b21010908070b190809080901090209030904090509060907070b190809000908090209030904090509060907070b190809000901090809030904090509060907070b1908090009010902090809040905090609070c0101010c070b0308090009010902090309040905090609070b210109000b210109010b210109020b21010903070b19080900090109020903090409050906090705060c1403030303030303030303030303030303030303082901082901082a01080e01080601080701080801080901080a01080b01080c01080d01080f010810010811010812010813010814010815010816010817010818020822081c010b270209000901020308220203030106081d02060b270209000901090001060901020708220822010608220306082203031403030303030303030303030303070b030809000901090209030904090509060907070b190809000901090209030904090509060907030303030502060b1908090009010902090309040905090609070a0302081c06081d0f03030b210109020b21010903030303030b210109000b210109010b210109020b210109030303070b19080900090109020903090409050906090703030303020b21010900060b260109000207081f0303070b0308090009010902090309040905090609070305030823070b190809000901090209030904090509060907031f01010303030303030303030b2101090903030101010101010101060b190809000901090209030904090509060907070b1908090009010902090309040905090609070a03030503082908290a0301090905030303060a03060a0309090009010902090309040905090609070908090900090109020903090409050906090709092001010303030303030303030b2101090903030101010101010101060b190809000901090209030904090509060907070b1908090009010902090309040905090609070a0303030503082908290a03010201070a0900040a0307081d08220a0303070b2702090009010900090104696e69740d77656967687465645f706f6f6c076163636f756e7404636f696e056576656e74067369676e657206737472696e67057461626c6509747970655f696e666f06766563746f7209626173655f706f6f6c0466656573077061636b6167650d66697865645f706f696e743634076d616e616765720d77656967687465645f6d617468114164644c69717569646974794576656e7409466c6173686c6f616e0e466c6173686c6f616e4576656e740f466c6173686c6f616e48656c7065721452656d6f76654c69717569646974794576656e7409537761704576656e74095765696768745f3130095765696768745f3135095765696768745f3230095765696768745f3235095765696768745f3330095765696768745f3335095765696768745f3430095765696768745f3435085765696768745f35095765696768745f3530095765696768745f3535095765696768745f3630095765696768745f3635095765696768745f3730095765696768745f3735095765696768745f3830095765696768745f3835095765696768745f3930095765696768745f39350c5765696768746564506f6f6c195765696768746564506f6f6c4372656174696f6e4576656e74125765696768746564506f6f6c4576656e7473105765696768746564506f6f6c496e666f125765696768746564506f6f6c4c6f6f6b75701c5765696768746564506f6f6c506172616d4368616e67654576656e74125765696768746564506f6f6c506172616d73115765696768746564506f6f6c546f6b656e04436f696e0d6164645f6c6971756964697479146372656174655f77656967687465645f706f6f6c0f6465706f7369745f746f5f706f6f6c11657874726163745f66726f6d5f706f6f6c09666c6173686c6f616e11666c6173686c6f616e5f6665655f6270731c666c6173686c6f616e5f68656c7065725f696e697469616c697a65640a6765745f7765696768740a696e697469616c697a650b696e697469616c697a656406537472696e670d6c705f6e616d655f62795f69640d6c705f73686f72745f6e616d650c6e6578745f706f6f6c5f69640d7061795f666c6173686c6f616e0d706f6f6c5f62616c616e63657319706f6f6c5f62616c616e6365735f616e645f7765696768747309706f6f6c5f696e666f0b706f6f6c5f6c6f636b65641072656d6f76655f6c69717569646974791d7365745f64656661756c745f706f6f6c5f737761705f6665655f627073157365745f666c6173686c6f616e5f6665655f627073157365745f706f6f6c5f737761705f6665655f6270730d737761705f65786163745f696e0e737761705f65786163745f6f75740c4669786564506f696e7436340e737761705f6665655f726174696f0d7536345f746f5f737472696e67127570646174655f706f6f6c5f6c6f6f6b75701477656967687465645f706f6f6c5f65786973747308616d6f756e745f3008616d6f756e745f3108616d6f756e745f3208616d6f756e745f33156d696e7465645f6c705f636f696e5f616d6f756e74066c6f636b656410666c6173686c6f616e5f6576656e74730b4576656e7448616e646c65156275726e65645f6c705f636f696e5f616d6f756e74066964785f696e076964785f6f757409616d6f756e745f696e0a616d6f756e745f6f75740a6665655f616d6f756e740e706f6f6c5f62616c616e63655f300e706f6f6c5f62616c616e63655f310e706f6f6c5f62616c616e63655f320e706f6f6c5f62616c616e63655f330b64756d6d795f6669656c640761737365745f300761737365745f310761737365745f320761737365745f33087765696768745f30087765696768745f31087765696768745f32087765696768745f331e696e76657273655f6e6567617465645f737761705f6665655f726174696f13706f6f6c5f746f6b656e5f6d696e745f6361700e4d696e744361706162696c69747913706f6f6c5f746f6b656e5f6275726e5f6361700e4275726e4361706162696c6974791072657365727665645f6c705f636f696e066576656e74730763726561746f720c737761705f6665655f62707314706f6f6c5f6372656174696f6e5f6576656e7473146164645f6c69717569646974795f6576656e74731772656d6f76655f6c69717569646974795f6576656e74730b737761705f6576656e747313706172616d5f6368616e67655f6576656e74730862616c616e63657307776569676874730e6c705f636f696e5f737570706c790c6e616d655f746f5f706f6f6c055461626c650a69645f746f5f6e616d65076e6578745f6964046e616d650a707265765f76616c7565096e65775f76616c75651664656661756c745f737761705f6665655f726174696f187265736f757263655f6163636f756e745f616464726573730576616c756511706f6f6c5f746f6b656e5f737570706c791a636f6d707574655f706f6f6c5f746f6b656e735f6973737565640765787472616374056d657267650a656d69745f6576656e74046d696e7410467265657a654361706162696c6974791476616c69646174655f706f6f6c5f6173736574730769735f6e756c6c177265736f757263655f6163636f756e745f7369676e6572036f6e65067375625f6670066469765f66701d636f6d707574655f696e76617269616e745f776569676874735f753634116465636f64655f726f756e645f646f776e04757466381264657374726f795f667265657a655f636170106e65775f6576656e745f68616e646c650a616464726573735f6f66036d756c066465636f64650854797065496e666f07747970655f6f66044e756c6c036e6577086672616374696f6e08636f6e7461696e7306626f72726f770673796d626f6c06617070656e64066c656e6774680a7375625f737472696e670a6162736f72625f6665651e636f6d707574655f61737365745f616d6f756e745f746f5f72657475726e047a65726f046275726e0d69735f617574686f72697a65641176616c69646174655f737761705f66656522737761705f6665655f70726f746f636f6c5f616c6c6f636174696f6e5f726174696f1d63616c635f6f75745f676976656e5f696e5f776569676874735f7536341d63616c635f696e5f676976656e5f6f75745f776569676874735f7536340f6465636f64655f726f756e645f7570077265766572736509747970655f6e616d65067570736572740361646448271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af00000000000000000000000000000000000000000000000000000000000000014dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee993aa044a65a27bd89b163f8b3be3777b160b09a25c336643dcc2878dfd8f2a8dfb6e709add23c710c40e4844d889938f703719f72d2d4439ee682d67f07a15c5030810270000000000000308010000000000000003081e0000000000000003080000000000000000030802000000000000000308030000000000000003082e0100000000000003082d010000000000000308300100000000000003082f0100000000000003082c010000000000000308650000000000000003080800000000000000030805000000000000000308070000000000000003080600000000000000030864000000000000000308c80000000000000003080900000000000000030804000000000000000201080a0209085448414c412d4c500a02040357503a0a0202012d0a0204032e2e2e0a02151464656661756c745f737761705f6665655f6270730a021211666c6173686c6f616e5f6665655f6270730a020d0c737761705f6665655f6270730a02020130126170746f733a3a6d657461646174615f7631a107120000000000000000104552525f554e415554484f52495a45440b4572726f7220636f64657301000000000000000f4552525f494e495449414c495a4544000200000000000000114552525f554e494e495449414c495a4544000300000000000000184552525f57454947485445445f504f4f4c5f4558495354530004000000000000001c4552525f57454947485445445f504f4f4c5f4e4f545f455849535453000500000000000000254552525f57454947485445445f504f4f4c5f494e56414c49445f504f4f4c5f415353455453000600000000000000264552525f57454947485445445f504f4f4c5f494e56414c49445f504f4f4c5f57454947485453000700000000000000254552525f57454947485445445f504f4f4c5f494e56414c49445f504f4f4c5f574549474854000800000000000000284552525f57454947485445445f504f4f4c5f494e53554646494349454e545f4c4951554944495459000900000000000000184552525f57454947485445445f504f4f4c5f4c4f434b4544002c01000000000000294552525f57454947485445445f504f4f4c5f464c4153484c4f414e5f554e494e495449414c495a4544002d010000000000002a4552525f57454947485445445f504f4f4c5f464c4153484c4f414e5f494e56414c49445f414d4f554e54002e010000000000002e4552525f57454947485445445f504f4f4c5f464c4153484c4f414e5f494e53554646494349454e545f5245504159002f01000000000000274552525f57454947485445445f504f4f4c5f464c4153484c4f414e5f4e4f545f4f4e474f494e47003001000000000000274552525f57454947485445445f504f4f4c5f464c4153484c4f414e5f494e56414c49445f4645450064000000000000001e4552525f57454947485445445f504f4f4c5f494e56414c49445f53574150006500000000000000244552525f57454947485445445f504f4f4c5f494e53554646494349454e545f494e50555400c800000000000000224552525f57454947485445445f504f4f4c5f494e56414c49445f535741505f46454500000809706f6f6c5f696e666f0101000a6765745f7765696768740101000c6e6578745f706f6f6c5f69640101000d6c705f6e616d655f62795f69640101000e737761705f6665655f726174696f01010011666c6173686c6f616e5f6665655f6270730101001477656967687465645f706f6f6c5f65786973747301010019706f6f6c5f62616c616e6365735f616e645f77656967687473010100000205500351035203530354030102045003510352035303020204500351035203530303020355013703560b24010b0208090009010902090309040905090609070402055003510352035303580305020959035a035b035c035d035e035f036003610306020162010702016201080201620109020162010a020162010b020162010c020162010d020162010e020162010f0201620110020162011102016201120201620113020162011402016201150201620116020162011702016201180201620119020e630b21010900640b21010901650b21010902660b210109036703680369036a034c08236b08236c0b25010b2008090009010902090309040905090609076e0b26010b200809000901090209030904090509060907700b21010b200809000901090209030904090509060907710b1b08090009010902090309040905090609071a020772055003510352035303540373031b0205740b24010b1a0809000901090209030904090509060907750b24010b000809000901090209030904090509060907760b24010b040809000901090209030904090509060907770b24010b050809000901090209030904090509060907780b2401081e1c0203790a037a0a037b031d02037c0b27020822081c7e0b27020308227f031e0203800108228101038201031f020283010823780b2401081e2002016201191700171b171a170317193c193e193f194001170217041705170001000303191d16b7011109040305050704273800200409050b071227111c3c000c120e0038010c090e0138020c0a0a0906000000000000000024041d0a0a060000000000000000240c04051f090c040b04042205260b1201070c270e0238030c0b0e0338040c0c0a090a0a400a02000000000000000c0e0a0b0600000000000000002404370d0e0a0b440a0a0c06000000000000000024043e0d0e0a0c440a0a122e38050c0d0e0d410a0e0e410a210449054d0b1201070c2738060c110e0e0e0d0b11111f0c170c0f0a0f06000000000000000024045a055e0b1201070c270d000e17060000000000000000420a1438070c130d010e17060100000000000000420a1438080c140d020c060a0b0600000000000000002404780e17060200000000000000420a140c05057a0600000000000000000c050b060b0538090c150d030c080a0c06000000000000000024048a010e17060300000000000000420a140c07058c010600000000000000000c070b080b07380a0c160a1236000b00380b0a1236010b01380c0a1236020b02380d0a1236030b03380e0a12360436050b090b0a0b0b0b0c0a0f3901380f0b0f0b12370638100c100938110b100b130b140b150b160201010003191d1f27f5021109040305070b00010704273812040a050e0b0001070d27381320041205160b000107052738140c2d38150c2e38160c2f38170c300a2d0a2e160a2f160a3016066400000000000000210429052d0b0001070f270e0138010c1b0e0238020c1c0e0338030c1d0e0438040c1e0a2d0a2e400a02000000000000000c310a1b0a1c400a02000000000000000c1f0a1b06000000000000000024044a0a1c060000000000000000240c05054c090c050b05044f05530b0001070d270a2d06000000000000000024045c0a2e060000000000000000240c10055e090c100b10046105650b0001070f273818048c010a1d0600000000000000002104700a1e060000000000000000210c140572090c140b14047505790b0001070d270a2f060000000000000000210482010a30060000000000000000210c15058401090c150b15048701058b010b0001070f2705e901381904b9010a1d060000000000000000240497010a1e060000000000000000210c16059901090c160b16049c0105a0010b0001070d270a2f0600000000000000002404a9010a30060000000000000000210c1705ab01090c170b1704ae0105b2010b0001070f270d310a2f440a0d1f0a1d440a05e9010a1d0600000000000000002404c2010a1e060000000000000000240c1805c401090c180b1804c70105cb010b0001070d270a2f0600000000000000002404d4010a30060000000000000000240c1905d601090c190b1904d90105dd010b0001070f270d310a2f440a0d1f0a1d440a0d310a30440a0d1f0a1e440a11260c2b111c2b1f1007140c2c11270c260a260b260a2c112811290c230e1f0e31112a112b0c220a220710240482020586020b0001070c270e2b381a0715112c071408381b0c250c210c200b21381c0b200b250c290c2807100e2938100c2a0b010c1a0b020c060b030c070b040c080b2d0c090b2e0c0a0b2f0c0b0b300c0c0b2a0c0d0a2c0c0e0b230c0f0b290c110b280c120e2b381d0e2b381e0e2b381f0e2b38200e2b382139020c130b1a0b060b070b080b090b0a0b0b0b0c0b0e0b0f0b110b120b0d0b1339000c270d27360436070b0011300b1b0b1c0b1d0b1e0a220b2c070011311132390338220b220710170e27370638100c240e2b0b273f000e2b0907010e2b382339043f040838110b2402020000011905240a0106000000000000000021040a0b003c0536080b02382405230a010601000000000000002104140b003c0636090b02382405230b0106020000000000000021041e0b003c07360a0b02382405230b003c08360b0b02382402030000011941610a010600000000000000002104180b003c050c060a020a063708382523040e05120b0601070c270b0636080b0238260c05055f0a010601000000000000002104300b003c060c070a020a0737093825230426052a0b0701070c270b0736090b0238260c04055d0b010602000000000000002104480b003c070c080a020a08370a382523043e05420b0801070c270b08360a0b0238260c03055b0b003c080c090a020a09370b382523045205560b0901070c270b09360b0b0238260c030b030c040b040c050b05020401000203194291011109040305050704273800200409050b0712270a00060000000000000000240412080c0405160a01060000000000000000240c040b04041b080c05051f0a02060000000000000000240c050b050424080c0605280a03060000000000000000240c060b06042b052d070727111c0c0e0a0e3c000c0d0a000a0d37003801250439053d0b0d010707270a010a0d3701380225044405480b0d010707270a020a0d3702380325044f05530b0d010707270a030a0d3703380425045a055e0b0d010707270a0d36000a0038070c090a0d36010a0138080c0a0a0d36020a0238090c0b0b0d36030a03380a0c0c3827047c0b0e3c040c08080b08360c1505870111260c070e070c0f0a0f0807010b0f382339043f040b090b0a0b0b0b0c0b000b010b020b033909020501000103050a382704030505070a27111c3d04370d1402060000000503111c3b04020701000043b60138280c130a1338292104090600000000000000000c0b05b4010a13382a2104100605000000000000000c0905b2010a13382b210417060a000000000000000c0805b0010a13382c21041e060f000000000000000c0705ae010a13382d2104250614000000000000000c0605ac010a13382e21042c0619000000000000000c0505aa010a13382f210433061e000000000000000c0405a8010a13383021043a0623000000000000000c0305a6010a1338312104410628000000000000000c0205a4010a133832210448062d000000000000000c0105a2010a13383321044f0632000000000000000c0005a0010a1338342104560637000000000000000c12059e010a13383521045d063c000000000000000c11059c010a1338362104640641000000000000000c10059a010a13383721046b0646000000000000000c0f0598010a133838210472064b000000000000000c0e0596010a1338392104790650000000000000000c0d0594010a13383a210480010655000000000000000c0c0592010a13383b21048701065a000000000000000c0a0590010b13383c21048c01058e01070e27065f000000000000000c0a0b0a0c0c0b0c0c0d0b0d0c0e0b0e0c0f0b0f0c100b100c110b110c120b120c000b000c010b010c020b020c030b030c040b040c050b050c060b060c070b070c080b080c090b090c0b0b0b02080300002d1c1109200404050607012711340409050b07042711260c000e00383d383e060000000000000000121d2d1d0e000702070011360e003821121f2d1f02090100000503111c291f020a0100011d5d13111c2b1d0c010a01100b0a00383f0409050d0b01010713270b01100b0b00384014020b0000000c510716112c0c000d003841113a0d000717112c113a0d0038141119113a0d000717112c113a0d003842113a0d000717112c113a0d0038151119113a38182004410d000717112c113a0d003843113a0d000717112c113a0d0038161119113a38192004410d000717112c113a0d003844113a0d000717112c113a0d0038171119113a0e00113b06200000000000000024044f0e00060000000000000000061d00000000000000113c0c000d000718112c113a0b00020c0100011d0505111c2b1d100c14020d010002031963c10111090403050507042738000408050a070927111c0c180a183c040c120b043a090c080c070c060c050e0038010c140e0138020c150e0238030c160e0338040c170a12370d140c110a050600000000000000002404440a050a110c0a350b0a35180700351a340c0d0b140a050a0d1626043c05400b12010706270d000b0d380738450a060600000000000000002404630a060a110c0b350b0b35180700351a340c0e0b150a060a0e1626045b055f0b12010706270d010b0e380838460a07060000000000000000240482010a070a110c0c350b0c35180700351a340c0f0b160a070a0f1626047a057e0b12010706270d020b0f380938470a080600000000000000002404a1010a080b110c09350b0935180700351a340c100b170a080a101626049901059d010b12010706270d030b10380a38480b183c000c130a1336000b00380b0a1336010b01380c0a1336020b02380d0b1336030b03380e090a12360c150b12360e0b050b060b070b08390a3849020e0000000e1d0a00370038010a0037013802400a02000000000000000c01384a2004100d010a0037023803440a384b2004190d010b0037033804440a051b0b00010b01020f010001196417111c3d000c0038143815400a02000000000000000c01384a20040d0d013816440a384b2004130d013817440a0b0038050b0102100100011d651d111c2b1d0c020a02100e0a00384c0409050d0b02010713270b02100e0b00384d140c010e01100f140e011010140e01101114021100000103050a38272004050902111c3d04370c14021201000303191d667a1109040305050704273800200409050b071227111c3c000c0f0e00384e0c0d38060c0e0a0f370038010a0d0a0e113e0c050a0f370138020a0d0a0e113e0c06381820042c0a0f370238030a0d0a0e113e0c01052e0600000000000000000c010b010c07381920043b0a0f370338040a0d0b0e113e0c02053d0600000000000000000c020b020c080a0f36000a0538070c090a0f36010a0638080c0a0a070600000000000000002404530a0f36020a0738090c030555384f0c030b030c0b0a080600000000000000002404610a0f36030a08380a0c04056338500c040b040c0c0b000a0f370f38510b0f360436100b050b060b070b080b0d390b38520938110b090b0a0b0b0b0c02130104011f692a0b0011410404050607032711090409050b0701270a011142040f0511071127111c2a1f0c020a021007140700113111320c030a01070011360a020f07150b020f140719112c0b030b01121e38530214010402031f6a290b0011410404050607032738270409050b070a270a0107002304100512070827111c0c040a043c040c020a02370d140c030a010b02360d150b042a1f0f14071a112c0b030b01121e38530215010401196b370b0011410404050607032711090409050b0704270a011142040f051107112711270c02111c3c000c030a033711140700113111320c040a01070011360a033611150a020b020a03371114112811290a033612150b0336043613071b112c0b040b01121e3853021601000303191d6ced011109040305050704273800200409050b0712270e0038250c090a090600000000000000002404130515070b2738540c1f0c19111c0c1b0a1b3d000c1738550c1d38560c1e0a1d0a1e2204293857200c01052b090c010b0104313858200c020533090c020b020436053a0b17010710270a1d3828210a1d3859210a1d385a210b1d385b210c120c110c100c0f0a0f0a101e0a111e0b121e045305570b17010710270a1e3828210a1e3859210a1e385a210b1e385b210c160c150c140c130a130a141e0a151e0b161e047005740b17010710270b0f04790600000000000000000c050589010b10047e0601000000000000000c040587010b110483010602000000000000000c030585010603000000000000000c030b030c040b040c050b050c0d0b130490010600000000000000000c0805a0010b140495010601000000000000000c07059e010b15049a010602000000000000000c06059c010603000000000000000c060b060c070b070c080b080c0e0b173711140a09113111320c1c11430a1c113111320c1a0a090a1c170c0a0a0d0a0e0b0a0e190e1f11440c0b0a0b0e190a0e420a142304c10105c301070c270d000b1a3826385c0a1b0a0d0b00385d0a1b0a0e0a0b385e0c0c0b1b3c000c180a18360436140b0d0b0e0b090b0b0b1c0a18370038010a18370138020a18370238030b1837033804390c385f0938110b0c021701000303191d7186021109040305050704273800200409050b0712270a01060000000000000000240410051207102738540c210c1a111c0c1d0a1d3d000c1838550c1f38560c200a1f0a202204263857200c020528090c020b02042e3858200c030530090c030b03043305370b18010710270a1f3828210a1f3859210a1f385a210b1f385b210c130c120c110c100a100a111e0a121e0b131e045005540b18010710270a203828210a203859210a20385a210b20385b210c170c160c150c140a140a151e0a161e0b171e046d05710b18010710270b1004760600000000000000000c060586010b11047b0601000000000000000c050584010b120480010602000000000000000c040582010603000000000000000c040b040c050b050c060b060c0e0b14048d010600000000000000000c09059d010b150492010601000000000000000c08059b010b160497010602000000000000000c070599010603000000000000000c070b070c080b080c090b090c0f0a010e1a0a0f420a142304a70105ab010b1801070c270e0038250c1c0a1c0600000000000000002404b30105b7010b1801070b270a0e0a0f0a010e1a0e2111450c0b0b183712140a0b113111460c0a0a0a0b1c2504ca0105cc01070b270a0a0b0b170c1e11430a1e113111320c1b0a0a0a1b170c0c0d000b1b3826385c0a1d0a0e0d000b0c3826385d0a1d0a0f0a01385e0c0d0b1d3c000c190a19360436140b0e0b0f0b0a0b010b1e0a19370038010a19370138020a19370238030b1937033804390c385f0938110b000b0d0218010001190505111c3d00371114021900000030200a00060000000000000000210407071c112c02407200000000000000000c010a0006000000000000000022041b050e0d010630000000000000000a00060a0000000000000019163344720b00060a000000000000001a0c0005090d0138600b01112c021a000002191d742538540c040c01111c2a1d0c0238610c030a020f0e0a030b010b043806121c38620b0004220a020f0b0a02100c140b0338630a02100c14060100000000000000160b020f0c1505240b0201021b0100000503111c3b00021900190119021903190d1b01190a1f001b00030003011d011d0203021d001c001c011c02190b1b021f01190819091b041b0300170117021703170417051706170817003c013e023f034009170a170d17121713171517161717171817000000","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"weighted_pool","friends":["0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::init"],"exposed_functions":[{"name":"add_liquidity","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>"],"return":["0x1::coin::Coin<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>>","0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>"]},{"name":"create_weighted_pool","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>"],"return":["0x1::coin::Coin<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>>"]},{"name":"flashloan","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["u64","u64","u64","u64"],"return":["0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Flashloan<T0, T1, T2, T3, T4, T5, T6, T7>"]},{"name":"flashloan_fee_bps","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["u64"]},{"name":"get_weight","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]}],"params":[],"return":["u64"]},{"name":"initialize","visibility":"friend","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":[]},{"name":"initialized","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":[],"return":["bool"]},{"name":"lp_name_by_id","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["u64"],"return":["0x1::string::String"]},{"name":"next_pool_id","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["u64"]},{"name":"pay_flashloan","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>","0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::Flashloan<T0, T1, T2, T3, T4, T5, T6, T7>"],"return":[]},{"name":"pool_balances_and_weights","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["vector<u64>","vector<u64>"]},{"name":"pool_info","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["0x1::string::String"],"return":["vector<u64>","vector<u64>","u64"]},{"name":"remove_liquidity","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>>"],"return":["0x1::coin::Coin<T0>","0x1::coin::Coin<T1>","0x1::coin::Coin<T2>","0x1::coin::Coin<T3>"]},{"name":"set_default_pool_swap_fee_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64"],"return":[]},{"name":"set_flashloan_fee_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64"],"return":[]},{"name":"set_pool_swap_fee_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64"],"return":[]},{"name":"swap_exact_in","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<T8>"],"return":["0x1::coin::Coin<T9>"]},{"name":"swap_exact_out","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["0x1::coin::Coin<T8>","u64"],"return":["0x1::coin::Coin<T8>","0x1::coin::Coin<T9>"]},{"name":"swap_fee_ratio","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"weighted_pool_exists","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":[],"return":["bool"]}],"structs":[{"name":"AddLiquidityEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"},{"name":"minted_lp_coin_amount","type":"u64"}]},{"name":"Flashloan","is_native":false,"abilities":[],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"}]},{"name":"FlashloanEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"}]},{"name":"FlashloanHelper","is_native":false,"abilities":["key"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"locked","type":"bool"},{"name":"flashloan_fee_bps","type":"u64"},{"name":"flashloan_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::FlashloanEvent<T0, T1, T2, T3, T4, T5, T6, T7>>"}]},{"name":"RemoveLiquidityEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"},{"name":"burned_lp_coin_amount","type":"u64"}]},{"name":"SwapEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"idx_in","type":"u64"},{"name":"idx_out","type":"u64"},{"name":"amount_in","type":"u64"},{"name":"amount_out","type":"u64"},{"name":"fee_amount","type":"u64"},{"name":"pool_balance_0","type":"u64"},{"name":"pool_balance_1","type":"u64"},{"name":"pool_balance_2","type":"u64"},{"name":"pool_balance_3","type":"u64"}]},{"name":"Weight_10","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_15","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_20","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_25","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_30","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_35","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_40","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_45","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_5","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_50","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_55","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_60","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_65","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_70","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_75","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_80","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_85","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_90","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"Weight_95","is_native":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]},{"name":"WeightedPool","is_native":false,"abilities":["key"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"asset_0","type":"0x1::coin::Coin<T0>"},{"name":"asset_1","type":"0x1::coin::Coin<T1>"},{"name":"asset_2","type":"0x1::coin::Coin<T2>"},{"name":"asset_3","type":"0x1::coin::Coin<T3>"},{"name":"weight_0","type":"u64"},{"name":"weight_1","type":"u64"},{"name":"weight_2","type":"u64"},{"name":"weight_3","type":"u64"},{"name":"swap_fee_ratio","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"},{"name":"inverse_negated_swap_fee_ratio","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"},{"name":"pool_token_mint_cap","type":"0x1::coin::MintCapability<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>>"},{"name":"pool_token_burn_cap","type":"0x1::coin::BurnCapability<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>>"},{"name":"reserved_lp_coin","type":"0x1::coin::Coin<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolToken<T0, T1, T2, T3, T4, T5, T6, T7>>"},{"name":"events","type":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolEvents<T0, T1, T2, T3, T4, T5, T6, T7>"}]},{"name":"WeightedPoolCreationEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"creator","type":"address"},{"name":"amount_0","type":"u64"},{"name":"amount_1","type":"u64"},{"name":"amount_2","type":"u64"},{"name":"amount_3","type":"u64"},{"name":"minted_lp_coin_amount","type":"u64"},{"name":"swap_fee_bps","type":"u64"}]},{"name":"WeightedPoolEvents","is_native":false,"abilities":["store"],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"pool_creation_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolCreationEvent<T0, T1, T2, T3, T4, T5, T6, T7>>"},{"name":"add_liquidity_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::AddLiquidityEvent<T0, T1, T2, T3, T4, T5, T6, T7>>"},{"name":"remove_liquidity_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::RemoveLiquidityEvent<T0, T1, T2, T3, T4, T5, T6, T7>>"},{"name":"swap_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::SwapEvent<T0, T1, T2, T3, T4, T5, T6, T7>>"},{"name":"param_change_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolParamChangeEvent>"}]},{"name":"WeightedPoolInfo","is_native":false,"abilities":["copy","drop","store"],"generic_type_params":[],"fields":[{"name":"balances","type":"vector<u64>"},{"name":"weights","type":"vector<u64>"},{"name":"lp_coin_supply","type":"u64"}]},{"name":"WeightedPoolLookup","is_native":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"name_to_pool","type":"0x1::table::Table<0x1::string::String, 0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolInfo>"},{"name":"id_to_name","type":"0x1::table::Table<u64, 0x1::string::String>"},{"name":"next_id","type":"u64"}]},{"name":"WeightedPoolParamChangeEvent","is_native":false,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"name","type":"0x1::string::String"},{"name":"prev_value","type":"u64"},{"name":"new_value","type":"u64"}]},{"name":"WeightedPoolParams","is_native":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"default_swap_fee_ratio","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"},{"name":"param_change_events","type":"0x1::event::EventHandle<0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af::weighted_pool::WeightedPoolParamChangeEvent>"}]},{"name":"WeightedPoolToken","is_native":false,"abilities":[],"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"fields":[{"name":"dummy_field","type":"bool"}]}]}},{"bytecode":"0xa11ceb0b060000000a01000c020c060312aa0104bc012a05e6018a0207f003860208f6054006b6061410ca06660cb007b901000001010102000300040005010604010001000700010a00000000000000000000000802030400000000000904021300000000000000000000000000000000000000000a04021c00000000000000000000000000000000000000000000000000000000050b0203080000000000000000050c00010a00000000000000000000040d02030400000000040c0a0b06000000000000030e02030100020f0e0f0001101112010001111617010001120f03010001130e02010001141802010001050406050706080709080c0a10001300140b150c150d150e150a1a001b001c001d0b1e0c1e0d1e0e1e010b00010908010b0001090900010103060c030304090409050906090708090009010902090309040905090609070a090009010902090309040905090609070908090904090009010902090306090009010902090309080909010b00010904010b0001090501090002050b0001091201060c010501091002060c03010b000109000a09000901090209030904090509060907091009110a09080909090a090b090c090d090e090f0911091201091201060b00010900010302050b0001090002050b0001091b0109180a09000901090209030904090509060907091809190a09080909090a090b090c090d090e090f0919091a0a09100911091209130914091509160917091a091b01091b116d756c74695f686f705f7363726970747304636f696e067369676e657209626173655f706f6f6c0b737461626c655f706f6f6c0d77656967687465645f706f6f6c04436f696e0e636865636b5f616e645f737761701069735f77656967687465645f706f6f6c0f737761705f65786163745f696e5f320f737761705f65786163745f696e5f331477656967687465645f706f6f6c5f6578697374730d737761705f65786163745f696e12737461626c655f706f6f6c5f6578697374730769735f6e756c6c0a616464726573735f6f660877697468647261770576616c75651569735f6163636f756e745f72656769737465726564087265676973746572076465706f73697448271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af00000000000000000000000000000000000000000000000000000000000000010308020000000000000003080100000000000000126170746f733a3a6d657461646174615f7631520201000000000000001b4552525f4d554c5449484f505f504f4f4c5f4e4f545f4558495354000200000000000000204552525f4d554c5449484f505f494e53554646494349454e545f4f55545055540000000000000001153800040b3801040505070701270b0038020c0105133803040e05100701270b0038040c010b010201000000020338052002020104000d200a0011090c030a000b013806380738080c040e0438090b0226040f05130b00010700270a03380a20041a0b00380b051c0b00010b030b04380c020301040019210a0011090c030a000b01380d380e380f38100c040e0438110b0226041005140b00010700270a03381220041b0b003813051d0b00010b030b0438140200","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"multi_hop_scripts","friends":[],"exposed_functions":[{"name":"swap_exact_in_2","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64"],"return":[]},{"name":"swap_exact_in_3","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64"],"return":[]}],"structs":[]}},{"bytecode":"0xa11ceb0b060000000a01000a020a12031c970104b3014205f5019b02079004f5010885064006c5060a10cf06380c8707d60300000101010200030004010a04010001040b0004000100010001000100050001040000000000060201040000000000070201040000000000080301060000000000000009030106000000000000020c050600010d08090100030e010c0100010f0109010004050f1004000000000110060c01000111050101000112120101000406131004000000000407100f040000000001131516010001140901010004081a1b0600000000000004091e1f060000000000000607060a070b060b080b070d060d080d090e0a110b110c110d0e06110e0e0f070f0a0c070c0a0f0b0c0b100b0f0d0c0d100d061811190f1c0a1c0b1c0c1c12190c1805060c030303030006060c030303030303060c0303080b000109020b00010903050b000109000b000109010b000109020b000109030b00010b0104090009010902090301060c010501090002060c03010b000109000109010109020101010903040900090109020903040b000109000b000109010b000109020b00010903010b00010b01040900090109020903010b0104090009010902090302050b0001090006060c0b000109000b000109010b000109020b000109030305050b000109000b000109010b000109020b0001090301060b00010900010302050b0001090501090406090009010902090309040905010b00010904010b0001090501090503050b000109050b00010904020b0001090403020b000109040b0001090513737461626c655f706f6f6c5f7363726970747304636f696e067369676e657209626173655f706f6f6c0b737461626c655f706f6f6c0d6164645f6c6971756964697479126372656174655f737461626c655f706f6f6c1072656d6f76655f6c69717569646974790d737761705f65786163745f696e0e737761705f65786163745f6f757404436f696e0f537461626c65506f6f6c546f6b656e0a616464726573735f6f660877697468647261770769735f6e756c6c047a65726f1569735f6163636f756e745f72656769737465726564087265676973746572076465706f7369740576616c75650c64657374726f795f7a65726f48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af000000000000000000000000000000000000000000000000000000000000000103080100000000000000126170746f733a3a6d657461646174615f763124010100000000000000174552525f494e53554646494349454e545f4f55545055540000000001040004360a0011050c070a000b0138000c080a000b0238010c0938022004130a000b0338030c05051538040c050b050c0a380520041f0a000b0438060c06052138070c060b060c0b0b080b090b0a0b0b38080c0c0a0738092004300b00380a05320b00010b070b0c380b020101040004380a0011050c080a000b0138000c090a000b0238010c0a38022004130a000b0338030c06051538040c060b060c0b380520041f0a000b0438060c07052138070c070b070c0c0a000b090b0a0b0b0b0c0b05380c0c0d0a0838092004320b00380a05340b00010b080b0d380b020201040014440a0011050c060b000b01380d380e0c0a0c090c080c070e07380f0b0226041105130700270e0838100b03260419051b0700270a060b0738110a060b08381238022004300e0938130b0426042a052c0700270a060b09381405320b09381538052004410e0a38160b0526043b053d0700270b060b0a381705430b0a38180203010400171f0a0011050c030a000b013819381a0c040e04381b0b0226040e05120b00010700270a03381c2004190b00381d051b0b00010b030b04381e02040104001d1a0a0011050c030a000b0138190b02381f0c040c050a030b0538200a03381c2004140b00381d05160b00010b030b04381e0200","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"stable_pool_scripts","friends":[],"exposed_functions":[{"name":"add_liquidity","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64","u64","u64"],"return":[]},{"name":"create_stable_pool","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64","u64","u64","u64"],"return":[]},{"name":"remove_liquidity","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64","u64","u64","u64"],"return":[]},{"name":"swap_exact_in","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64"],"return":[]},{"name":"swap_exact_out","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64"],"return":[]}],"structs":[]}},{"bytecode":"0xa11ceb0b060000000a01000a020a1a0324bf0104e3014205a502c20307e705fd0108e4074006a4081410b808510c8909db0400000101010200030004010a04010001040b000800010001000100010001000100010001000500010800000000000000000006020108000000000000000000070301080000000000000000000804010a00000000000000000000000904010a00000000000000000000020c060700010d090a0100030e010d0100010f010a01000405101108000000000000000001101213010001111401010001120a0101000113070d0100011406010100040617180800000000000000000407181008000000000000000004081d1e0a00000000000000000000040921220a000000000000000000000608060b070c060c080c070e060e080e090f0a080a0b0b080b0b0a0c0b0c0c0c0a0e0b0e0c0e0d150e150b150f0f0615100f061b111c0a1f0d1f0e1f0b1f121c0b1b09060c03030303030303030005060c0303030306060c030303030303060c03030c0b000109020b00010903050b000109000b000109010b000109020b000109030b00010b0108090009010902090309040905090609070b000109000b000109010b000109020b0001090301060c010501090002060c03010b0001090001090101090201010109030809000901090209030904090509060907040b000109000b000109010b000109020b00010903050b00010b0108090009010902090309040905090609070b000109000b000109010b000109020b0001090301060b00010900010302050b00010900010b010809000901090209030904090509060907080b000109020b00010903050b000109000b000109010b000109020b000109030b00010b01080900090109020903090409050906090705060c0b000109000b000109010b000109020b00010903010b00010b01080900090109020903090409050906090705050b000109000b000109010b000109020b0001090302050b000109090109080a0900090109020903090409050906090709080909010b00010908010b0001090901090903050b000109090b00010908020b0001090803020b000109080b000109091577656967687465645f706f6f6c5f7363726970747304636f696e067369676e657209626173655f706f6f6c0d77656967687465645f706f6f6c0d6164645f6c6971756964697479146372656174655f77656967687465645f706f6f6c1072656d6f76655f6c69717569646974790d737761705f65786163745f696e0e737761705f65786163745f6f757404436f696e115765696768746564506f6f6c546f6b656e0a616464726573735f6f660877697468647261770769735f6e756c6c047a65726f0576616c7565076465706f7369740c64657374726f795f7a65726f1569735f6163636f756e745f7265676973746572656408726567697374657248271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af00000000000000000000000000000000000000000000000000000000000000010308010000000000000003080000000000000000126170746f733a3a6d657461646174615f76313d0200000000000000000f4552525f4c505f534c495050414745000100000000000000174552525f494e53554646494349454e545f4f5554505554000000000104000582010a0011050c0b0a000a0138000c0c0a000a0238010c0d38022004130a000a0338030c09051538040c090b090c0e380520041f0a000a0438060c0a052138070c0a0b0a0c0f0b0c0b0d0b0e0b0f38080c140c130c120c110c100b010e113809170b0526043505390b00010701270b020e12380a170b0626044105450b00010701270a0b0b11380b0a0b0b12380c380220045e0b030e13380d170b07260456055a0b00010701270a0b0b13380e05600b13380f38052004730b040e143810170b0826046b056f0b00010701270a0b0b14381105750b1438120a0b381320047c0b003814057e0b00010b0b0b103815020101040016370a0011050c070a000b0138000c080a000b0238010c0938022004130a000b0338030c05051538040c050b050c0a380520041f0a000b0438060c06052138070c060b060c0b0a000b080b090b0a0b0b38160c0c0a0738132004310b00381405330b00010b070b0c3815020201040019440a0011050c060b000b01381738180c0a0c090c080c070e0738090b0226041105130700270e08380a0b03260419051b0700270a060b07380b0a060b08380c38022004300e09380d0b0426042a052c0700270a060b09380e05320b09380f38052004410e0a38100b0526043b053d0700270b060b0a381105430b0a381202030104001a1f0a0011050c030a000b013819381a0c040e04381b0b0226040e05120b00010700270a03381c2004190b00381d051b0b00010b030b04381e0204010400201a0a0011050c030a000b0138190b02381f0c040c050a030b0538200a03381c2004140b00381d05160b00010b030b04381e0200","abi":{"address":"0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af","name":"weighted_pool_scripts","friends":[],"exposed_functions":[{"name":"add_liquidity","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64","u64","u64","u64","u64","u64","u64"],"return":[]},{"name":"create_weighted_pool","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64","u64","u64"],"return":[]},{"name":"remove_liquidity","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64","u64","u64","u64"],"return":[]},{"name":"swap_exact_in","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64"],"return":[]},{"name":"swap_exact_out","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64","u64"],"return":[]}],"structs":[]}}]',
2790
- );
2791
-
2792
- export function loadAllTypes(coder: MoveCoder) {
2793
- _0x1.loadAllTypes(coder);
2794
- _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.loadAllTypes(
2795
- coder,
2796
- );
2797
- for (const m of Object.values(MODULES)) {
2798
- coder.load(
2799
- m as any,
2800
- "0x48271d39d0b05bd6efca2278f22277d6fcc375504f9839fd73f74ace240861af",
2801
- );
2802
- }
2803
- }
2804
-
2805
- loadAllTypes(defaultMoveCoder());