@typemove/aptos 1.0.0-rc.21 → 1.0.0-rc.23

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