@typemove/aptos 1.2.4 → 1.2.5-rc.1

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