@typemove/aptos 1.8.2 → 1.8.3-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 (38) hide show
  1. package/dist/cjs/builtin/0x1.d.ts +673 -658
  2. package/dist/cjs/builtin/0x1.d.ts.map +1 -1
  3. package/dist/cjs/builtin/0x1.js +931 -882
  4. package/dist/cjs/builtin/0x1.js.map +1 -1
  5. package/dist/cjs/builtin/0x3.d.ts +62 -48
  6. package/dist/cjs/builtin/0x3.d.ts.map +1 -1
  7. package/dist/cjs/builtin/0x3.js +46 -37
  8. package/dist/cjs/builtin/0x3.js.map +1 -1
  9. package/dist/cjs/builtin/0x4.d.ts +72 -72
  10. package/dist/cjs/builtin/0x4.d.ts.map +1 -1
  11. package/dist/cjs/builtin/0x4.js +121 -121
  12. package/dist/cjs/builtin/0x4.js.map +1 -1
  13. package/dist/esm/builtin/0x1.d.ts +673 -658
  14. package/dist/esm/builtin/0x1.d.ts.map +1 -1
  15. package/dist/esm/builtin/0x1.js +931 -882
  16. package/dist/esm/builtin/0x1.js.map +1 -1
  17. package/dist/esm/builtin/0x3.d.ts +62 -48
  18. package/dist/esm/builtin/0x3.d.ts.map +1 -1
  19. package/dist/esm/builtin/0x3.js +46 -37
  20. package/dist/esm/builtin/0x3.js.map +1 -1
  21. package/dist/esm/builtin/0x4.d.ts +72 -72
  22. package/dist/esm/builtin/0x4.d.ts.map +1 -1
  23. package/dist/esm/builtin/0x4.js +121 -121
  24. package/dist/esm/builtin/0x4.js.map +1 -1
  25. package/package.json +2 -2
  26. package/src/abis/0x1.json +3816 -3657
  27. package/src/abis/0x3.json +247 -219
  28. package/src/abis/0x4.json +576 -576
  29. package/src/builtin/0x1.ts +1560 -1471
  30. package/src/builtin/0x3.ts +109 -83
  31. package/src/builtin/0x4.ts +183 -185
  32. package/src/tests/abis/0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99.json +1099 -0
  33. package/src/tests/abis/0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615.json +409 -0
  34. package/src/tests/abis/0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.json +219 -0
  35. package/src/tests/types/0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99.ts +1652 -0
  36. package/src/tests/types/0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615.ts +743 -0
  37. package/src/tests/types/0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.ts +125 -0
  38. package/src/tests/types/index.ts +3 -0
@@ -0,0 +1,1652 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ /* Generated types for 0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99, original address 0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99 */
6
+
7
+ import { TypeDescriptor, ANY_TYPE } from "@typemove/move";
8
+ import { MoveCoder, TypedEventInstance } from "@typemove/aptos";
9
+
10
+ import { defaultMoveCoder } from "@typemove/aptos";
11
+
12
+ import {
13
+ Aptos,
14
+ Account as AptosAccount,
15
+ MoveAddressType,
16
+ PendingTransactionResponse,
17
+ InputGenerateTransactionOptions,
18
+ MoveStructId,
19
+ InputViewFunctionData,
20
+ } from "@aptos-labs/ts-sdk";
21
+
22
+ import * as _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9 from "./0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.js";
23
+ import * as _0x1 from "@typemove/aptos/builtin/0x1";
24
+ import * as _0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac from "./0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.js";
25
+ import * as _0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615 from "./0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615.js";
26
+
27
+ export namespace farming {
28
+ export interface BoostMultiplierChangeEvent {
29
+ user_addr: MoveAddressType;
30
+ prev_boost_factor: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
31
+ curr_boost_factor: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
32
+ }
33
+
34
+ export namespace BoostMultiplierChangeEvent {
35
+ export const TYPE_QNAME =
36
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::BoostMultiplierChangeEvent";
37
+
38
+ const TYPE = new TypeDescriptor<BoostMultiplierChangeEvent>(
39
+ BoostMultiplierChangeEvent.TYPE_QNAME,
40
+ );
41
+
42
+ export function type(): TypeDescriptor<BoostMultiplierChangeEvent> {
43
+ return TYPE.apply();
44
+ }
45
+ }
46
+
47
+ export interface BoostMultiplierChangeEventInstance
48
+ extends TypedEventInstance<BoostMultiplierChangeEvent> {
49
+ data_decoded: BoostMultiplierChangeEvent;
50
+ type_arguments: [];
51
+ }
52
+
53
+ export interface BoostedFarming {
54
+ boost_multipliers: _0x1.smart_table.SmartTable<
55
+ MoveAddressType,
56
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64
57
+ >;
58
+ boost_scaling_factor_bps: bigint;
59
+ max_boost_multiplier_bps: bigint;
60
+ }
61
+
62
+ export namespace BoostedFarming {
63
+ export const TYPE_QNAME =
64
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::BoostedFarming";
65
+
66
+ const TYPE = new TypeDescriptor<BoostedFarming>(BoostedFarming.TYPE_QNAME);
67
+
68
+ export function type(): TypeDescriptor<BoostedFarming> {
69
+ return TYPE.apply();
70
+ }
71
+ }
72
+
73
+ export interface ClaimEvent {
74
+ stake_coin: string;
75
+ reward_coin: string;
76
+ amount: bigint;
77
+ }
78
+
79
+ export namespace ClaimEvent {
80
+ export const TYPE_QNAME =
81
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::ClaimEvent";
82
+
83
+ const TYPE = new TypeDescriptor<ClaimEvent>(ClaimEvent.TYPE_QNAME);
84
+
85
+ export function type(): TypeDescriptor<ClaimEvent> {
86
+ return TYPE.apply();
87
+ }
88
+ }
89
+
90
+ export interface ClaimEventInstance extends TypedEventInstance<ClaimEvent> {
91
+ data_decoded: ClaimEvent;
92
+ type_arguments: [];
93
+ }
94
+
95
+ export interface EpochInfo {
96
+ start_sec: bigint;
97
+ end_sec: bigint;
98
+ reward_per_sec: bigint;
99
+ }
100
+
101
+ export namespace EpochInfo {
102
+ export const TYPE_QNAME =
103
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::EpochInfo";
104
+
105
+ const TYPE = new TypeDescriptor<EpochInfo>(EpochInfo.TYPE_QNAME);
106
+
107
+ export function type(): TypeDescriptor<EpochInfo> {
108
+ return TYPE.apply();
109
+ }
110
+ }
111
+
112
+ export interface Farming {
113
+ pool_info: farming.PoolInfo[];
114
+ thl_epoch: farming.EpochInfo;
115
+ total_thl_alloc_point: bigint;
116
+ }
117
+
118
+ export namespace Farming {
119
+ export const TYPE_QNAME =
120
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::Farming";
121
+
122
+ const TYPE = new TypeDescriptor<Farming>(Farming.TYPE_QNAME);
123
+
124
+ export function type(): TypeDescriptor<Farming> {
125
+ return TYPE.apply();
126
+ }
127
+ }
128
+
129
+ export interface FarmingEvents {
130
+ reward_epoch_events: _0x1.event.EventHandle<farming.RewardEpochEvent>;
131
+ stake_events: _0x1.event.EventHandle<farming.StakeEvent>;
132
+ unstake_events: _0x1.event.EventHandle<farming.UnstakeEvent>;
133
+ claim_events: _0x1.event.EventHandle<farming.ClaimEvent>;
134
+ pool_change_events: _0x1.event.EventHandle<farming.PoolChangeEvent>;
135
+ }
136
+
137
+ export namespace FarmingEvents {
138
+ export const TYPE_QNAME =
139
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::FarmingEvents";
140
+
141
+ const TYPE = new TypeDescriptor<FarmingEvents>(FarmingEvents.TYPE_QNAME);
142
+
143
+ export function type(): TypeDescriptor<FarmingEvents> {
144
+ return TYPE.apply();
145
+ }
146
+ }
147
+
148
+ export interface FarmingV2 {
149
+ v2_only_mode: boolean;
150
+ }
151
+
152
+ export namespace FarmingV2 {
153
+ export const TYPE_QNAME =
154
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::FarmingV2";
155
+
156
+ const TYPE = new TypeDescriptor<FarmingV2>(FarmingV2.TYPE_QNAME);
157
+
158
+ export function type(): TypeDescriptor<FarmingV2> {
159
+ return TYPE.apply();
160
+ }
161
+ }
162
+
163
+ export interface PauseFlag {
164
+ paused: boolean;
165
+ }
166
+
167
+ export namespace PauseFlag {
168
+ export const TYPE_QNAME =
169
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::PauseFlag";
170
+
171
+ const TYPE = new TypeDescriptor<PauseFlag>(PauseFlag.TYPE_QNAME);
172
+
173
+ export function type(): TypeDescriptor<PauseFlag> {
174
+ return TYPE.apply();
175
+ }
176
+ }
177
+
178
+ export interface PoolChangeEvent {
179
+ pid: bigint;
180
+ stake_coin: string;
181
+ prev_thl_alloc_point: bigint;
182
+ new_thl_alloc_point: bigint;
183
+ }
184
+
185
+ export namespace PoolChangeEvent {
186
+ export const TYPE_QNAME =
187
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::PoolChangeEvent";
188
+
189
+ const TYPE = new TypeDescriptor<PoolChangeEvent>(
190
+ PoolChangeEvent.TYPE_QNAME,
191
+ );
192
+
193
+ export function type(): TypeDescriptor<PoolChangeEvent> {
194
+ return TYPE.apply();
195
+ }
196
+ }
197
+
198
+ export interface PoolChangeEventInstance
199
+ extends TypedEventInstance<PoolChangeEvent> {
200
+ data_decoded: PoolChangeEvent;
201
+ type_arguments: [];
202
+ }
203
+
204
+ export interface PoolInfo {
205
+ stake_coin: string;
206
+ stake_amount: bigint;
207
+ thl_alloc_point: bigint;
208
+ last_rewards_sec: _0x1.table.Table<string, bigint>;
209
+ acc_rewards_per_share: _0x1.table.Table<string, bigint>;
210
+ extra_rewards: _0x1.table.Table<string, farming.EpochInfo>;
211
+ extra_reward_coins: string[];
212
+ }
213
+
214
+ export namespace PoolInfo {
215
+ export const TYPE_QNAME =
216
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::PoolInfo";
217
+
218
+ const TYPE = new TypeDescriptor<PoolInfo>(PoolInfo.TYPE_QNAME);
219
+
220
+ export function type(): TypeDescriptor<PoolInfo> {
221
+ return TYPE.apply();
222
+ }
223
+ }
224
+
225
+ export interface RateLimit {
226
+ window_duration_seconds: bigint;
227
+ coin_rate_limiters: _0x1.simple_map.SimpleMap<
228
+ string,
229
+ _0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.rate_limiter.RateLimiter
230
+ >;
231
+ }
232
+
233
+ export namespace RateLimit {
234
+ export const TYPE_QNAME =
235
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RateLimit";
236
+
237
+ const TYPE = new TypeDescriptor<RateLimit>(RateLimit.TYPE_QNAME);
238
+
239
+ export function type(): TypeDescriptor<RateLimit> {
240
+ return TYPE.apply();
241
+ }
242
+ }
243
+
244
+ export interface RateLimitMaxQtyUpdateEvent {
245
+ coin_type: string;
246
+ window_max_qty: bigint;
247
+ }
248
+
249
+ export namespace RateLimitMaxQtyUpdateEvent {
250
+ export const TYPE_QNAME =
251
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RateLimitMaxQtyUpdateEvent";
252
+
253
+ const TYPE = new TypeDescriptor<RateLimitMaxQtyUpdateEvent>(
254
+ RateLimitMaxQtyUpdateEvent.TYPE_QNAME,
255
+ );
256
+
257
+ export function type(): TypeDescriptor<RateLimitMaxQtyUpdateEvent> {
258
+ return TYPE.apply();
259
+ }
260
+ }
261
+
262
+ export interface RateLimitMaxQtyUpdateEventInstance
263
+ extends TypedEventInstance<RateLimitMaxQtyUpdateEvent> {
264
+ data_decoded: RateLimitMaxQtyUpdateEvent;
265
+ type_arguments: [];
266
+ }
267
+
268
+ export interface RateLimitWindowDurationUpdateEvent {
269
+ window_duration_seconds: bigint;
270
+ }
271
+
272
+ export namespace RateLimitWindowDurationUpdateEvent {
273
+ export const TYPE_QNAME =
274
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RateLimitWindowDurationUpdateEvent";
275
+
276
+ const TYPE = new TypeDescriptor<RateLimitWindowDurationUpdateEvent>(
277
+ RateLimitWindowDurationUpdateEvent.TYPE_QNAME,
278
+ );
279
+
280
+ export function type(): TypeDescriptor<RateLimitWindowDurationUpdateEvent> {
281
+ return TYPE.apply();
282
+ }
283
+ }
284
+
285
+ export interface RateLimitWindowDurationUpdateEventInstance
286
+ extends TypedEventInstance<RateLimitWindowDurationUpdateEvent> {
287
+ data_decoded: RateLimitWindowDurationUpdateEvent;
288
+ type_arguments: [];
289
+ }
290
+
291
+ export interface RewardEpochEvent {
292
+ reward_coin: string;
293
+ start_sec: bigint;
294
+ end_sec: bigint;
295
+ reward_per_sec: bigint;
296
+ }
297
+
298
+ export namespace RewardEpochEvent {
299
+ export const TYPE_QNAME =
300
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RewardEpochEvent";
301
+
302
+ const TYPE = new TypeDescriptor<RewardEpochEvent>(
303
+ RewardEpochEvent.TYPE_QNAME,
304
+ );
305
+
306
+ export function type(): TypeDescriptor<RewardEpochEvent> {
307
+ return TYPE.apply();
308
+ }
309
+ }
310
+
311
+ export interface RewardEpochEventInstance
312
+ extends TypedEventInstance<RewardEpochEvent> {
313
+ data_decoded: RewardEpochEvent;
314
+ type_arguments: [];
315
+ }
316
+
317
+ export interface StakeEvent {
318
+ pid: bigint;
319
+ stake_coin: string;
320
+ amount: bigint;
321
+ }
322
+
323
+ export namespace StakeEvent {
324
+ export const TYPE_QNAME =
325
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::StakeEvent";
326
+
327
+ const TYPE = new TypeDescriptor<StakeEvent>(StakeEvent.TYPE_QNAME);
328
+
329
+ export function type(): TypeDescriptor<StakeEvent> {
330
+ return TYPE.apply();
331
+ }
332
+ }
333
+
334
+ export interface StakeEventInstance extends TypedEventInstance<StakeEvent> {
335
+ data_decoded: StakeEvent;
336
+ type_arguments: [];
337
+ }
338
+
339
+ export interface StakeEventV2 {
340
+ pid: bigint;
341
+ stake_coin: string;
342
+ amount: bigint;
343
+ boosted_amount: bigint;
344
+ boost_factor: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
345
+ }
346
+
347
+ export namespace StakeEventV2 {
348
+ export const TYPE_QNAME =
349
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::StakeEventV2";
350
+
351
+ const TYPE = new TypeDescriptor<StakeEventV2>(StakeEventV2.TYPE_QNAME);
352
+
353
+ export function type(): TypeDescriptor<StakeEventV2> {
354
+ return TYPE.apply();
355
+ }
356
+ }
357
+
358
+ export interface StakeEventV2Instance
359
+ extends TypedEventInstance<StakeEventV2> {
360
+ data_decoded: StakeEventV2;
361
+ type_arguments: [];
362
+ }
363
+
364
+ export interface Staker {
365
+ pool_info: _0x1.table.Table<bigint, farming.UserPoolInfo>;
366
+ }
367
+
368
+ export namespace Staker {
369
+ export const TYPE_QNAME =
370
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::Staker";
371
+
372
+ const TYPE = new TypeDescriptor<Staker>(Staker.TYPE_QNAME);
373
+
374
+ export function type(): TypeDescriptor<Staker> {
375
+ return TYPE.apply();
376
+ }
377
+ }
378
+
379
+ export interface UnstakeEvent {
380
+ pid: bigint;
381
+ stake_coin: string;
382
+ amount: bigint;
383
+ }
384
+
385
+ export namespace UnstakeEvent {
386
+ export const TYPE_QNAME =
387
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::UnstakeEvent";
388
+
389
+ const TYPE = new TypeDescriptor<UnstakeEvent>(UnstakeEvent.TYPE_QNAME);
390
+
391
+ export function type(): TypeDescriptor<UnstakeEvent> {
392
+ return TYPE.apply();
393
+ }
394
+ }
395
+
396
+ export interface UnstakeEventInstance
397
+ extends TypedEventInstance<UnstakeEvent> {
398
+ data_decoded: UnstakeEvent;
399
+ type_arguments: [];
400
+ }
401
+
402
+ export interface UnstakeEventV2 {
403
+ pid: bigint;
404
+ stake_coin: string;
405
+ amount: bigint;
406
+ boosted_amount: bigint;
407
+ boost_factor: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64;
408
+ }
409
+
410
+ export namespace UnstakeEventV2 {
411
+ export const TYPE_QNAME =
412
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::UnstakeEventV2";
413
+
414
+ const TYPE = new TypeDescriptor<UnstakeEventV2>(UnstakeEventV2.TYPE_QNAME);
415
+
416
+ export function type(): TypeDescriptor<UnstakeEventV2> {
417
+ return TYPE.apply();
418
+ }
419
+ }
420
+
421
+ export interface UnstakeEventV2Instance
422
+ extends TypedEventInstance<UnstakeEventV2> {
423
+ data_decoded: UnstakeEventV2;
424
+ type_arguments: [];
425
+ }
426
+
427
+ export interface UserPoolInfo {
428
+ amount: bigint;
429
+ last_acc_rewards_per_share: _0x1.table.Table<string, bigint>;
430
+ rewards: _0x1.table.Table<string, bigint>;
431
+ }
432
+
433
+ export namespace UserPoolInfo {
434
+ export const TYPE_QNAME =
435
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::UserPoolInfo";
436
+
437
+ const TYPE = new TypeDescriptor<UserPoolInfo>(UserPoolInfo.TYPE_QNAME);
438
+
439
+ export function type(): TypeDescriptor<UserPoolInfo> {
440
+ return TYPE.apply();
441
+ }
442
+ }
443
+
444
+ export interface VeTHLGatedFarming {
445
+ threshold_bps: bigint;
446
+ exempt_pools: bigint[];
447
+ }
448
+
449
+ export namespace VeTHLGatedFarming {
450
+ export const TYPE_QNAME =
451
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::VeTHLGatedFarming";
452
+
453
+ const TYPE = new TypeDescriptor<VeTHLGatedFarming>(
454
+ VeTHLGatedFarming.TYPE_QNAME,
455
+ );
456
+
457
+ export function type(): TypeDescriptor<VeTHLGatedFarming> {
458
+ return TYPE.apply();
459
+ }
460
+ }
461
+
462
+ export namespace entry {
463
+ export async function addPool<T0 = any>(
464
+ client: Aptos,
465
+ account: AptosAccount,
466
+ request: {
467
+ typeArguments: [MoveStructId];
468
+ functionArguments: [bigint];
469
+ },
470
+ options?: InputGenerateTransactionOptions,
471
+ ): Promise<PendingTransactionResponse> {
472
+ const coder = defaultMoveCoder(client.config.fullnode);
473
+ const transaction = await client.transaction.build.simple({
474
+ sender: account.accountAddress,
475
+ data: {
476
+ function:
477
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::add_pool",
478
+ functionArguments: coder.encodeArray(request.functionArguments),
479
+ typeArguments: request.typeArguments,
480
+ },
481
+ options,
482
+ });
483
+ return await client.signAndSubmitTransaction({
484
+ signer: account,
485
+ transaction,
486
+ });
487
+ }
488
+
489
+ export async function enableRateLimitFeature(
490
+ client: Aptos,
491
+ account: AptosAccount,
492
+ request: {
493
+ typeArguments: [];
494
+ functionArguments: [];
495
+ },
496
+ options?: InputGenerateTransactionOptions,
497
+ ): Promise<PendingTransactionResponse> {
498
+ const coder = defaultMoveCoder(client.config.fullnode);
499
+ const transaction = await client.transaction.build.simple({
500
+ sender: account.accountAddress,
501
+ data: {
502
+ function:
503
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::enable_rate_limit_feature",
504
+ functionArguments: coder.encodeArray(request.functionArguments),
505
+ typeArguments: [],
506
+ },
507
+ options,
508
+ });
509
+ return await client.signAndSubmitTransaction({
510
+ signer: account,
511
+ transaction,
512
+ });
513
+ }
514
+
515
+ export async function init(
516
+ client: Aptos,
517
+ account: AptosAccount,
518
+ request: {
519
+ typeArguments: [];
520
+ functionArguments: [];
521
+ },
522
+ options?: InputGenerateTransactionOptions,
523
+ ): Promise<PendingTransactionResponse> {
524
+ const coder = defaultMoveCoder(client.config.fullnode);
525
+ const transaction = await client.transaction.build.simple({
526
+ sender: account.accountAddress,
527
+ data: {
528
+ function:
529
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::init",
530
+ functionArguments: coder.encodeArray(request.functionArguments),
531
+ typeArguments: [],
532
+ },
533
+ options,
534
+ });
535
+ return await client.signAndSubmitTransaction({
536
+ signer: account,
537
+ transaction,
538
+ });
539
+ }
540
+ export async function initPauseFlag(
541
+ client: Aptos,
542
+ account: AptosAccount,
543
+ request: {
544
+ typeArguments: [];
545
+ functionArguments: [];
546
+ },
547
+ options?: InputGenerateTransactionOptions,
548
+ ): Promise<PendingTransactionResponse> {
549
+ const coder = defaultMoveCoder(client.config.fullnode);
550
+ const transaction = await client.transaction.build.simple({
551
+ sender: account.accountAddress,
552
+ data: {
553
+ function:
554
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::init_pause_flag",
555
+ functionArguments: coder.encodeArray(request.functionArguments),
556
+ typeArguments: [],
557
+ },
558
+ options,
559
+ });
560
+ return await client.signAndSubmitTransaction({
561
+ signer: account,
562
+ transaction,
563
+ });
564
+ }
565
+ export async function initializeBoostedFarming(
566
+ client: Aptos,
567
+ account: AptosAccount,
568
+ request: {
569
+ typeArguments: [];
570
+ functionArguments: [];
571
+ },
572
+ options?: InputGenerateTransactionOptions,
573
+ ): Promise<PendingTransactionResponse> {
574
+ const coder = defaultMoveCoder(client.config.fullnode);
575
+ const transaction = await client.transaction.build.simple({
576
+ sender: account.accountAddress,
577
+ data: {
578
+ function:
579
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialize_boosted_farming",
580
+ functionArguments: coder.encodeArray(request.functionArguments),
581
+ typeArguments: [],
582
+ },
583
+ options,
584
+ });
585
+ return await client.signAndSubmitTransaction({
586
+ signer: account,
587
+ transaction,
588
+ });
589
+ }
590
+ export async function initializeFarmingV2(
591
+ client: Aptos,
592
+ account: AptosAccount,
593
+ request: {
594
+ typeArguments: [];
595
+ functionArguments: [];
596
+ },
597
+ options?: InputGenerateTransactionOptions,
598
+ ): Promise<PendingTransactionResponse> {
599
+ const coder = defaultMoveCoder(client.config.fullnode);
600
+ const transaction = await client.transaction.build.simple({
601
+ sender: account.accountAddress,
602
+ data: {
603
+ function:
604
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialize_farming_v2",
605
+ functionArguments: coder.encodeArray(request.functionArguments),
606
+ typeArguments: [],
607
+ },
608
+ options,
609
+ });
610
+ return await client.signAndSubmitTransaction({
611
+ signer: account,
612
+ transaction,
613
+ });
614
+ }
615
+ export async function initializeVethlGatedFarming(
616
+ client: Aptos,
617
+ account: AptosAccount,
618
+ request: {
619
+ typeArguments: [];
620
+ functionArguments: [bigint];
621
+ },
622
+ options?: InputGenerateTransactionOptions,
623
+ ): Promise<PendingTransactionResponse> {
624
+ const coder = defaultMoveCoder(client.config.fullnode);
625
+ const transaction = await client.transaction.build.simple({
626
+ sender: account.accountAddress,
627
+ data: {
628
+ function:
629
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialize_vethl_gated_farming",
630
+ functionArguments: coder.encodeArray(request.functionArguments),
631
+ typeArguments: [],
632
+ },
633
+ options,
634
+ });
635
+ return await client.signAndSubmitTransaction({
636
+ signer: account,
637
+ transaction,
638
+ });
639
+ }
640
+
641
+ export async function newThlEpoch(
642
+ client: Aptos,
643
+ account: AptosAccount,
644
+ request: {
645
+ typeArguments: [];
646
+ functionArguments: [bigint, bigint, bigint];
647
+ },
648
+ options?: InputGenerateTransactionOptions,
649
+ ): Promise<PendingTransactionResponse> {
650
+ const coder = defaultMoveCoder(client.config.fullnode);
651
+ const transaction = await client.transaction.build.simple({
652
+ sender: account.accountAddress,
653
+ data: {
654
+ function:
655
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::new_thl_epoch",
656
+ functionArguments: coder.encodeArray(request.functionArguments),
657
+ typeArguments: [],
658
+ },
659
+ options,
660
+ });
661
+ return await client.signAndSubmitTransaction({
662
+ signer: account,
663
+ transaction,
664
+ });
665
+ }
666
+
667
+ export async function setBoostScalingFactorBps(
668
+ client: Aptos,
669
+ account: AptosAccount,
670
+ request: {
671
+ typeArguments: [];
672
+ functionArguments: [bigint];
673
+ },
674
+ options?: InputGenerateTransactionOptions,
675
+ ): Promise<PendingTransactionResponse> {
676
+ const coder = defaultMoveCoder(client.config.fullnode);
677
+ const transaction = await client.transaction.build.simple({
678
+ sender: account.accountAddress,
679
+ data: {
680
+ function:
681
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_boost_scaling_factor_bps",
682
+ functionArguments: coder.encodeArray(request.functionArguments),
683
+ typeArguments: [],
684
+ },
685
+ options,
686
+ });
687
+ return await client.signAndSubmitTransaction({
688
+ signer: account,
689
+ transaction,
690
+ });
691
+ }
692
+ export async function setCoinRateLimit<T0 = any>(
693
+ client: Aptos,
694
+ account: AptosAccount,
695
+ request: {
696
+ typeArguments: [MoveStructId];
697
+ functionArguments: [bigint];
698
+ },
699
+ options?: InputGenerateTransactionOptions,
700
+ ): Promise<PendingTransactionResponse> {
701
+ const coder = defaultMoveCoder(client.config.fullnode);
702
+ const transaction = await client.transaction.build.simple({
703
+ sender: account.accountAddress,
704
+ data: {
705
+ function:
706
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_coin_rate_limit",
707
+ functionArguments: coder.encodeArray(request.functionArguments),
708
+ typeArguments: request.typeArguments,
709
+ },
710
+ options,
711
+ });
712
+ return await client.signAndSubmitTransaction({
713
+ signer: account,
714
+ transaction,
715
+ });
716
+ }
717
+ export async function setMaxBoostMultiplierBps(
718
+ client: Aptos,
719
+ account: AptosAccount,
720
+ request: {
721
+ typeArguments: [];
722
+ functionArguments: [bigint];
723
+ },
724
+ options?: InputGenerateTransactionOptions,
725
+ ): Promise<PendingTransactionResponse> {
726
+ const coder = defaultMoveCoder(client.config.fullnode);
727
+ const transaction = await client.transaction.build.simple({
728
+ sender: account.accountAddress,
729
+ data: {
730
+ function:
731
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_max_boost_multiplier_bps",
732
+ functionArguments: coder.encodeArray(request.functionArguments),
733
+ typeArguments: [],
734
+ },
735
+ options,
736
+ });
737
+ return await client.signAndSubmitTransaction({
738
+ signer: account,
739
+ transaction,
740
+ });
741
+ }
742
+ export async function setPause(
743
+ client: Aptos,
744
+ account: AptosAccount,
745
+ request: {
746
+ typeArguments: [];
747
+ functionArguments: [boolean];
748
+ },
749
+ options?: InputGenerateTransactionOptions,
750
+ ): Promise<PendingTransactionResponse> {
751
+ const coder = defaultMoveCoder(client.config.fullnode);
752
+ const transaction = await client.transaction.build.simple({
753
+ sender: account.accountAddress,
754
+ data: {
755
+ function:
756
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_pause",
757
+ functionArguments: coder.encodeArray(request.functionArguments),
758
+ typeArguments: [],
759
+ },
760
+ options,
761
+ });
762
+ return await client.signAndSubmitTransaction({
763
+ signer: account,
764
+ transaction,
765
+ });
766
+ }
767
+ export async function setRateLimitWindowDuration(
768
+ client: Aptos,
769
+ account: AptosAccount,
770
+ request: {
771
+ typeArguments: [];
772
+ functionArguments: [bigint];
773
+ },
774
+ options?: InputGenerateTransactionOptions,
775
+ ): Promise<PendingTransactionResponse> {
776
+ const coder = defaultMoveCoder(client.config.fullnode);
777
+ const transaction = await client.transaction.build.simple({
778
+ sender: account.accountAddress,
779
+ data: {
780
+ function:
781
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_rate_limit_window_duration",
782
+ functionArguments: coder.encodeArray(request.functionArguments),
783
+ typeArguments: [],
784
+ },
785
+ options,
786
+ });
787
+ return await client.signAndSubmitTransaction({
788
+ signer: account,
789
+ transaction,
790
+ });
791
+ }
792
+ export async function setV2OnlyMode(
793
+ client: Aptos,
794
+ account: AptosAccount,
795
+ request: {
796
+ typeArguments: [];
797
+ functionArguments: [boolean];
798
+ },
799
+ options?: InputGenerateTransactionOptions,
800
+ ): Promise<PendingTransactionResponse> {
801
+ const coder = defaultMoveCoder(client.config.fullnode);
802
+ const transaction = await client.transaction.build.simple({
803
+ sender: account.accountAddress,
804
+ data: {
805
+ function:
806
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_v2_only_mode",
807
+ functionArguments: coder.encodeArray(request.functionArguments),
808
+ typeArguments: [],
809
+ },
810
+ options,
811
+ });
812
+ return await client.signAndSubmitTransaction({
813
+ signer: account,
814
+ transaction,
815
+ });
816
+ }
817
+ export async function setVethlGatedFarmingExemptPools(
818
+ client: Aptos,
819
+ account: AptosAccount,
820
+ request: {
821
+ typeArguments: [];
822
+ functionArguments: [bigint[]];
823
+ },
824
+ options?: InputGenerateTransactionOptions,
825
+ ): Promise<PendingTransactionResponse> {
826
+ const coder = defaultMoveCoder(client.config.fullnode);
827
+ const transaction = await client.transaction.build.simple({
828
+ sender: account.accountAddress,
829
+ data: {
830
+ function:
831
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_vethl_gated_farming_exempt_pools",
832
+ functionArguments: coder.encodeArray(request.functionArguments),
833
+ typeArguments: [],
834
+ },
835
+ options,
836
+ });
837
+ return await client.signAndSubmitTransaction({
838
+ signer: account,
839
+ transaction,
840
+ });
841
+ }
842
+ export async function setVethlGatedFarmingThresholdBps(
843
+ client: Aptos,
844
+ account: AptosAccount,
845
+ request: {
846
+ typeArguments: [];
847
+ functionArguments: [bigint];
848
+ },
849
+ options?: InputGenerateTransactionOptions,
850
+ ): Promise<PendingTransactionResponse> {
851
+ const coder = defaultMoveCoder(client.config.fullnode);
852
+ const transaction = await client.transaction.build.simple({
853
+ sender: account.accountAddress,
854
+ data: {
855
+ function:
856
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_vethl_gated_farming_threshold_bps",
857
+ functionArguments: coder.encodeArray(request.functionArguments),
858
+ typeArguments: [],
859
+ },
860
+ options,
861
+ });
862
+ return await client.signAndSubmitTransaction({
863
+ signer: account,
864
+ transaction,
865
+ });
866
+ }
867
+
868
+ export async function updateExtraReward<T0 = any>(
869
+ client: Aptos,
870
+ account: AptosAccount,
871
+ request: {
872
+ typeArguments: [MoveStructId];
873
+ functionArguments: [bigint, bigint, bigint, bigint];
874
+ },
875
+ options?: InputGenerateTransactionOptions,
876
+ ): Promise<PendingTransactionResponse> {
877
+ const coder = defaultMoveCoder(client.config.fullnode);
878
+ const transaction = await client.transaction.build.simple({
879
+ sender: account.accountAddress,
880
+ data: {
881
+ function:
882
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::update_extra_reward",
883
+ functionArguments: coder.encodeArray(request.functionArguments),
884
+ typeArguments: request.typeArguments,
885
+ },
886
+ options,
887
+ });
888
+ return await client.signAndSubmitTransaction({
889
+ signer: account,
890
+ transaction,
891
+ });
892
+ }
893
+ export async function updateThlReward(
894
+ client: Aptos,
895
+ account: AptosAccount,
896
+ request: {
897
+ typeArguments: [];
898
+ functionArguments: [bigint, bigint];
899
+ },
900
+ options?: InputGenerateTransactionOptions,
901
+ ): Promise<PendingTransactionResponse> {
902
+ const coder = defaultMoveCoder(client.config.fullnode);
903
+ const transaction = await client.transaction.build.simple({
904
+ sender: account.accountAddress,
905
+ data: {
906
+ function:
907
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::update_thl_reward",
908
+ functionArguments: coder.encodeArray(request.functionArguments),
909
+ typeArguments: [],
910
+ },
911
+ options,
912
+ });
913
+ return await client.signAndSubmitTransaction({
914
+ signer: account,
915
+ transaction,
916
+ });
917
+ }
918
+ }
919
+ export namespace view {
920
+ export async function accountStakingValue(
921
+ client: Aptos,
922
+ request: {
923
+ functionArguments: [MoveAddressType];
924
+ },
925
+ version?: bigint,
926
+ ): Promise<
927
+ [
928
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
929
+ ]
930
+ > {
931
+ const coder = defaultMoveCoder(client.config.fullnode);
932
+ const data: InputViewFunctionData = {
933
+ function:
934
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_staking_value",
935
+ functionArguments: coder.encodeArray(request.functionArguments),
936
+ typeArguments: [],
937
+ };
938
+ const res = await client.view({
939
+ payload: data,
940
+ options: { ledgerVersion: version },
941
+ });
942
+ const type = await coder.getMoveFunction(
943
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_staking_value",
944
+ );
945
+ return (await coder.decodeArray(res, type.return)) as any;
946
+ }
947
+ export async function accountStakingValueGivenAdd(
948
+ client: Aptos,
949
+ request: {
950
+ functionArguments: [MoveAddressType, bigint, bigint];
951
+ },
952
+ version?: bigint,
953
+ ): Promise<
954
+ [
955
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
956
+ ]
957
+ > {
958
+ const coder = defaultMoveCoder(client.config.fullnode);
959
+ const data: InputViewFunctionData = {
960
+ function:
961
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_staking_value_given_add",
962
+ functionArguments: coder.encodeArray(request.functionArguments),
963
+ typeArguments: [],
964
+ };
965
+ const res = await client.view({
966
+ payload: data,
967
+ options: { ledgerVersion: version },
968
+ });
969
+ const type = await coder.getMoveFunction(
970
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_staking_value_given_add",
971
+ );
972
+ return (await coder.decodeArray(res, type.return)) as any;
973
+ }
974
+ export async function accountVeThlValue(
975
+ client: Aptos,
976
+ request: {
977
+ functionArguments: [MoveAddressType];
978
+ },
979
+ version?: bigint,
980
+ ): Promise<
981
+ [
982
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
983
+ ]
984
+ > {
985
+ const coder = defaultMoveCoder(client.config.fullnode);
986
+ const data: InputViewFunctionData = {
987
+ function:
988
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_veTHL_value",
989
+ functionArguments: coder.encodeArray(request.functionArguments),
990
+ typeArguments: [],
991
+ };
992
+ const res = await client.view({
993
+ payload: data,
994
+ options: { ledgerVersion: version },
995
+ });
996
+ const type = await coder.getMoveFunction(
997
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_veTHL_value",
998
+ );
999
+ return (await coder.decodeArray(res, type.return)) as any;
1000
+ }
1001
+
1002
+ export async function boostMultiplier(
1003
+ client: Aptos,
1004
+ request: {
1005
+ functionArguments: [MoveAddressType];
1006
+ },
1007
+ version?: bigint,
1008
+ ): Promise<
1009
+ [
1010
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
1011
+ ]
1012
+ > {
1013
+ const coder = defaultMoveCoder(client.config.fullnode);
1014
+ const data: InputViewFunctionData = {
1015
+ function:
1016
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boost_multiplier",
1017
+ functionArguments: coder.encodeArray(request.functionArguments),
1018
+ typeArguments: [],
1019
+ };
1020
+ const res = await client.view({
1021
+ payload: data,
1022
+ options: { ledgerVersion: version },
1023
+ });
1024
+ const type = await coder.getMoveFunction(
1025
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boost_multiplier",
1026
+ );
1027
+ return (await coder.decodeArray(res, type.return)) as any;
1028
+ }
1029
+ export async function boostMultiplierGivenAdd(
1030
+ client: Aptos,
1031
+ request: {
1032
+ functionArguments: [MoveAddressType, bigint];
1033
+ },
1034
+ version?: bigint,
1035
+ ): Promise<
1036
+ [
1037
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
1038
+ ]
1039
+ > {
1040
+ const coder = defaultMoveCoder(client.config.fullnode);
1041
+ const data: InputViewFunctionData = {
1042
+ function:
1043
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boost_multiplier_given_add",
1044
+ functionArguments: coder.encodeArray(request.functionArguments),
1045
+ typeArguments: [],
1046
+ };
1047
+ const res = await client.view({
1048
+ payload: data,
1049
+ options: { ledgerVersion: version },
1050
+ });
1051
+ const type = await coder.getMoveFunction(
1052
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boost_multiplier_given_add",
1053
+ );
1054
+ return (await coder.decodeArray(res, type.return)) as any;
1055
+ }
1056
+ export async function boostedFarmingParams(
1057
+ client: Aptos,
1058
+
1059
+ version?: bigint,
1060
+ ): Promise<[bigint, bigint]> {
1061
+ const coder = defaultMoveCoder(client.config.fullnode);
1062
+ const data: InputViewFunctionData = {
1063
+ function:
1064
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boosted_farming_params",
1065
+ functionArguments: [],
1066
+ typeArguments: [],
1067
+ };
1068
+ const res = await client.view({
1069
+ payload: data,
1070
+ options: { ledgerVersion: version },
1071
+ });
1072
+ const type = await coder.getMoveFunction(
1073
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boosted_farming_params",
1074
+ );
1075
+ return (await coder.decodeArray(res, type.return)) as any;
1076
+ }
1077
+
1078
+ export async function coinRateLimiterView<T0 = any>(
1079
+ client: Aptos,
1080
+ request: {
1081
+ typeArguments: [MoveStructId];
1082
+ },
1083
+ version?: bigint,
1084
+ ): Promise<
1085
+ [
1086
+ _0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.rate_limiter.RateLimiter,
1087
+ ]
1088
+ > {
1089
+ const coder = defaultMoveCoder(client.config.fullnode);
1090
+ const data: InputViewFunctionData = {
1091
+ function:
1092
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::coin_rate_limiter_view",
1093
+ functionArguments: [],
1094
+ typeArguments: request.typeArguments,
1095
+ };
1096
+ const res = await client.view({
1097
+ payload: data,
1098
+ options: { ledgerVersion: version },
1099
+ });
1100
+ const type = await coder.getMoveFunction(
1101
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::coin_rate_limiter_view",
1102
+ );
1103
+ return (await coder.decodeArray(res, type.return)) as any;
1104
+ }
1105
+ export async function eligibleGivenAdd(
1106
+ client: Aptos,
1107
+ request: {
1108
+ functionArguments: [MoveAddressType, bigint, bigint];
1109
+ },
1110
+ version?: bigint,
1111
+ ): Promise<[boolean]> {
1112
+ const coder = defaultMoveCoder(client.config.fullnode);
1113
+ const data: InputViewFunctionData = {
1114
+ function:
1115
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::eligible_given_add",
1116
+ functionArguments: coder.encodeArray(request.functionArguments),
1117
+ typeArguments: [],
1118
+ };
1119
+ const res = await client.view({
1120
+ payload: data,
1121
+ options: { ledgerVersion: version },
1122
+ });
1123
+ const type = await coder.getMoveFunction(
1124
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::eligible_given_add",
1125
+ );
1126
+ return (await coder.decodeArray(res, type.return)) as any;
1127
+ }
1128
+
1129
+ export async function enabledRateLimiterFeature(
1130
+ client: Aptos,
1131
+
1132
+ version?: bigint,
1133
+ ): Promise<[boolean]> {
1134
+ const coder = defaultMoveCoder(client.config.fullnode);
1135
+ const data: InputViewFunctionData = {
1136
+ function:
1137
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::enabled_rate_limiter_feature",
1138
+ functionArguments: [],
1139
+ typeArguments: [],
1140
+ };
1141
+ const res = await client.view({
1142
+ payload: data,
1143
+ options: { ledgerVersion: version },
1144
+ });
1145
+ const type = await coder.getMoveFunction(
1146
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::enabled_rate_limiter_feature",
1147
+ );
1148
+ return (await coder.decodeArray(res, type.return)) as any;
1149
+ }
1150
+ export async function existsCoinRateLimiter<T0 = any>(
1151
+ client: Aptos,
1152
+ request: {
1153
+ typeArguments: [MoveStructId];
1154
+ },
1155
+ version?: bigint,
1156
+ ): Promise<[boolean]> {
1157
+ const coder = defaultMoveCoder(client.config.fullnode);
1158
+ const data: InputViewFunctionData = {
1159
+ function:
1160
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::exists_coin_rate_limiter",
1161
+ functionArguments: [],
1162
+ typeArguments: request.typeArguments,
1163
+ };
1164
+ const res = await client.view({
1165
+ payload: data,
1166
+ options: { ledgerVersion: version },
1167
+ });
1168
+ const type = await coder.getMoveFunction(
1169
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::exists_coin_rate_limiter",
1170
+ );
1171
+ return (await coder.decodeArray(res, type.return)) as any;
1172
+ }
1173
+
1174
+ export async function initializedVethlGatedFarming(
1175
+ client: Aptos,
1176
+
1177
+ version?: bigint,
1178
+ ): Promise<[boolean]> {
1179
+ const coder = defaultMoveCoder(client.config.fullnode);
1180
+ const data: InputViewFunctionData = {
1181
+ function:
1182
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialized_vethl_gated_farming",
1183
+ functionArguments: [],
1184
+ typeArguments: [],
1185
+ };
1186
+ const res = await client.view({
1187
+ payload: data,
1188
+ options: { ledgerVersion: version },
1189
+ });
1190
+ const type = await coder.getMoveFunction(
1191
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialized_vethl_gated_farming",
1192
+ );
1193
+ return (await coder.decodeArray(res, type.return)) as any;
1194
+ }
1195
+ export async function isStakeCoin(
1196
+ client: Aptos,
1197
+ request: {
1198
+ functionArguments: [string];
1199
+ },
1200
+ version?: bigint,
1201
+ ): Promise<[boolean, bigint]> {
1202
+ const coder = defaultMoveCoder(client.config.fullnode);
1203
+ const data: InputViewFunctionData = {
1204
+ function:
1205
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::is_stake_coin",
1206
+ functionArguments: coder.encodeArray(request.functionArguments),
1207
+ typeArguments: [],
1208
+ };
1209
+ const res = await client.view({
1210
+ payload: data,
1211
+ options: { ledgerVersion: version },
1212
+ });
1213
+ const type = await coder.getMoveFunction(
1214
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::is_stake_coin",
1215
+ );
1216
+ return (await coder.decodeArray(res, type.return)) as any;
1217
+ }
1218
+ export async function maxEligibleStake(
1219
+ client: Aptos,
1220
+ request: {
1221
+ functionArguments: [MoveAddressType, bigint];
1222
+ },
1223
+ version?: bigint,
1224
+ ): Promise<[boolean, bigint]> {
1225
+ const coder = defaultMoveCoder(client.config.fullnode);
1226
+ const data: InputViewFunctionData = {
1227
+ function:
1228
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::max_eligible_stake",
1229
+ functionArguments: coder.encodeArray(request.functionArguments),
1230
+ typeArguments: [],
1231
+ };
1232
+ const res = await client.view({
1233
+ payload: data,
1234
+ options: { ledgerVersion: version },
1235
+ });
1236
+ const type = await coder.getMoveFunction(
1237
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::max_eligible_stake",
1238
+ );
1239
+ return (await coder.decodeArray(res, type.return)) as any;
1240
+ }
1241
+
1242
+ export async function paused(
1243
+ client: Aptos,
1244
+
1245
+ version?: bigint,
1246
+ ): Promise<[boolean]> {
1247
+ const coder = defaultMoveCoder(client.config.fullnode);
1248
+ const data: InputViewFunctionData = {
1249
+ function:
1250
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::paused",
1251
+ functionArguments: [],
1252
+ typeArguments: [],
1253
+ };
1254
+ const res = await client.view({
1255
+ payload: data,
1256
+ options: { ledgerVersion: version },
1257
+ });
1258
+ const type = await coder.getMoveFunction(
1259
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::paused",
1260
+ );
1261
+ return (await coder.decodeArray(res, type.return)) as any;
1262
+ }
1263
+ export async function poolAccExtraRewardPerShare<T0 = any>(
1264
+ client: Aptos,
1265
+ request: {
1266
+ typeArguments: [MoveStructId];
1267
+ functionArguments: [bigint];
1268
+ },
1269
+ version?: bigint,
1270
+ ): Promise<[bigint]> {
1271
+ const coder = defaultMoveCoder(client.config.fullnode);
1272
+ const data: InputViewFunctionData = {
1273
+ function:
1274
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::pool_acc_extra_reward_per_share",
1275
+ functionArguments: coder.encodeArray(request.functionArguments),
1276
+ typeArguments: request.typeArguments,
1277
+ };
1278
+ const res = await client.view({
1279
+ payload: data,
1280
+ options: { ledgerVersion: version },
1281
+ });
1282
+ const type = await coder.getMoveFunction(
1283
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::pool_acc_extra_reward_per_share",
1284
+ );
1285
+ return (await coder.decodeArray(res, type.return)) as any;
1286
+ }
1287
+ export async function poolAccThlRewardPerShare(
1288
+ client: Aptos,
1289
+ request: {
1290
+ functionArguments: [bigint];
1291
+ },
1292
+ version?: bigint,
1293
+ ): Promise<[bigint]> {
1294
+ const coder = defaultMoveCoder(client.config.fullnode);
1295
+ const data: InputViewFunctionData = {
1296
+ function:
1297
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::pool_acc_thl_reward_per_share",
1298
+ functionArguments: coder.encodeArray(request.functionArguments),
1299
+ typeArguments: [],
1300
+ };
1301
+ const res = await client.view({
1302
+ payload: data,
1303
+ options: { ledgerVersion: version },
1304
+ });
1305
+ const type = await coder.getMoveFunction(
1306
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::pool_acc_thl_reward_per_share",
1307
+ );
1308
+ return (await coder.decodeArray(res, type.return)) as any;
1309
+ }
1310
+
1311
+ export async function stakeAmount(
1312
+ client: Aptos,
1313
+ request: {
1314
+ functionArguments: [MoveAddressType, bigint];
1315
+ },
1316
+ version?: bigint,
1317
+ ): Promise<
1318
+ [
1319
+ bigint,
1320
+ bigint,
1321
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
1322
+ ]
1323
+ > {
1324
+ const coder = defaultMoveCoder(client.config.fullnode);
1325
+ const data: InputViewFunctionData = {
1326
+ function:
1327
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::stake_amount",
1328
+ functionArguments: coder.encodeArray(request.functionArguments),
1329
+ typeArguments: [],
1330
+ };
1331
+ const res = await client.view({
1332
+ payload: data,
1333
+ options: { ledgerVersion: version },
1334
+ });
1335
+ const type = await coder.getMoveFunction(
1336
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::stake_amount",
1337
+ );
1338
+ return (await coder.decodeArray(res, type.return)) as any;
1339
+ }
1340
+ export async function stakeAndRewardAmount<T0 = any>(
1341
+ client: Aptos,
1342
+ request: {
1343
+ typeArguments: [MoveStructId];
1344
+ functionArguments: [MoveAddressType, bigint];
1345
+ },
1346
+ version?: bigint,
1347
+ ): Promise<[bigint, bigint]> {
1348
+ const coder = defaultMoveCoder(client.config.fullnode);
1349
+ const data: InputViewFunctionData = {
1350
+ function:
1351
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::stake_and_reward_amount",
1352
+ functionArguments: coder.encodeArray(request.functionArguments),
1353
+ typeArguments: request.typeArguments,
1354
+ };
1355
+ const res = await client.view({
1356
+ payload: data,
1357
+ options: { ledgerVersion: version },
1358
+ });
1359
+ const type = await coder.getMoveFunction(
1360
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::stake_and_reward_amount",
1361
+ );
1362
+ return (await coder.decodeArray(res, type.return)) as any;
1363
+ }
1364
+
1365
+ export async function v2OnlyMode(
1366
+ client: Aptos,
1367
+
1368
+ version?: bigint,
1369
+ ): Promise<[boolean]> {
1370
+ const coder = defaultMoveCoder(client.config.fullnode);
1371
+ const data: InputViewFunctionData = {
1372
+ function:
1373
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::v2_only_mode",
1374
+ functionArguments: [],
1375
+ typeArguments: [],
1376
+ };
1377
+ const res = await client.view({
1378
+ payload: data,
1379
+ options: { ledgerVersion: version },
1380
+ });
1381
+ const type = await coder.getMoveFunction(
1382
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::v2_only_mode",
1383
+ );
1384
+ return (await coder.decodeArray(res, type.return)) as any;
1385
+ }
1386
+ export async function veThlShortfallGivenAdd(
1387
+ client: Aptos,
1388
+ request: {
1389
+ functionArguments: [MoveAddressType, bigint, bigint];
1390
+ },
1391
+ version?: bigint,
1392
+ ): Promise<
1393
+ [
1394
+ boolean,
1395
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
1396
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64,
1397
+ ]
1398
+ > {
1399
+ const coder = defaultMoveCoder(client.config.fullnode);
1400
+ const data: InputViewFunctionData = {
1401
+ function:
1402
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::veTHL_shortfall_given_add",
1403
+ functionArguments: coder.encodeArray(request.functionArguments),
1404
+ typeArguments: [],
1405
+ };
1406
+ const res = await client.view({
1407
+ payload: data,
1408
+ options: { ledgerVersion: version },
1409
+ });
1410
+ const type = await coder.getMoveFunction(
1411
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::veTHL_shortfall_given_add",
1412
+ );
1413
+ return (await coder.decodeArray(res, type.return)) as any;
1414
+ }
1415
+ export async function vethlGatedFarmingExemptPools(
1416
+ client: Aptos,
1417
+
1418
+ version?: bigint,
1419
+ ): Promise<[bigint[]]> {
1420
+ const coder = defaultMoveCoder(client.config.fullnode);
1421
+ const data: InputViewFunctionData = {
1422
+ function:
1423
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::vethl_gated_farming_exempt_pools",
1424
+ functionArguments: [],
1425
+ typeArguments: [],
1426
+ };
1427
+ const res = await client.view({
1428
+ payload: data,
1429
+ options: { ledgerVersion: version },
1430
+ });
1431
+ const type = await coder.getMoveFunction(
1432
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::vethl_gated_farming_exempt_pools",
1433
+ );
1434
+ return (await coder.decodeArray(res, type.return)) as any;
1435
+ }
1436
+ export async function vethlGatedFarmingThresholdBps(
1437
+ client: Aptos,
1438
+
1439
+ version?: bigint,
1440
+ ): Promise<[bigint]> {
1441
+ const coder = defaultMoveCoder(client.config.fullnode);
1442
+ const data: InputViewFunctionData = {
1443
+ function:
1444
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::vethl_gated_farming_threshold_bps",
1445
+ functionArguments: [],
1446
+ typeArguments: [],
1447
+ };
1448
+ const res = await client.view({
1449
+ payload: data,
1450
+ options: { ledgerVersion: version },
1451
+ });
1452
+ const type = await coder.getMoveFunction(
1453
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::vethl_gated_farming_threshold_bps",
1454
+ );
1455
+ return (await coder.decodeArray(res, type.return)) as any;
1456
+ }
1457
+ }
1458
+ }
1459
+
1460
+ export namespace package$ {
1461
+ export interface ResourceSignerCapability {
1462
+ signer_cap: _0x1.account.SignerCapability;
1463
+ }
1464
+
1465
+ export namespace ResourceSignerCapability {
1466
+ export const TYPE_QNAME =
1467
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::package::ResourceSignerCapability";
1468
+
1469
+ const TYPE = new TypeDescriptor<ResourceSignerCapability>(
1470
+ ResourceSignerCapability.TYPE_QNAME,
1471
+ );
1472
+
1473
+ export function type(): TypeDescriptor<ResourceSignerCapability> {
1474
+ return TYPE.apply();
1475
+ }
1476
+ }
1477
+
1478
+ export namespace entry {
1479
+ export async function publishPackage(
1480
+ client: Aptos,
1481
+ account: AptosAccount,
1482
+ request: {
1483
+ typeArguments: [];
1484
+ functionArguments: [string, string[]];
1485
+ },
1486
+ options?: InputGenerateTransactionOptions,
1487
+ ): Promise<PendingTransactionResponse> {
1488
+ const coder = defaultMoveCoder(client.config.fullnode);
1489
+ const transaction = await client.transaction.build.simple({
1490
+ sender: account.accountAddress,
1491
+ data: {
1492
+ function:
1493
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::package::publish_package",
1494
+ functionArguments: coder.encodeArray(request.functionArguments),
1495
+ typeArguments: [],
1496
+ },
1497
+ options,
1498
+ });
1499
+ return await client.signAndSubmitTransaction({
1500
+ signer: account,
1501
+ transaction,
1502
+ });
1503
+ }
1504
+ }
1505
+ export namespace view {}
1506
+ }
1507
+
1508
+ export namespace scripts {
1509
+ export interface Null {
1510
+ dummy_field: boolean;
1511
+ }
1512
+
1513
+ export namespace Null {
1514
+ export const TYPE_QNAME =
1515
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::Null";
1516
+
1517
+ const TYPE = new TypeDescriptor<Null>(Null.TYPE_QNAME);
1518
+
1519
+ export function type(): TypeDescriptor<Null> {
1520
+ return TYPE.apply();
1521
+ }
1522
+ }
1523
+
1524
+ export namespace entry {
1525
+ export async function claim<T0 = any, T1 = any, T2 = any>(
1526
+ client: Aptos,
1527
+ account: AptosAccount,
1528
+ request: {
1529
+ typeArguments: [MoveStructId, MoveStructId, MoveStructId];
1530
+ functionArguments: [bigint];
1531
+ },
1532
+ options?: InputGenerateTransactionOptions,
1533
+ ): Promise<PendingTransactionResponse> {
1534
+ const coder = defaultMoveCoder(client.config.fullnode);
1535
+ const transaction = await client.transaction.build.simple({
1536
+ sender: account.accountAddress,
1537
+ data: {
1538
+ function:
1539
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::claim",
1540
+ functionArguments: coder.encodeArray(request.functionArguments),
1541
+ typeArguments: request.typeArguments,
1542
+ },
1543
+ options,
1544
+ });
1545
+ return await client.signAndSubmitTransaction({
1546
+ signer: account,
1547
+ transaction,
1548
+ });
1549
+ }
1550
+ export async function claimAllThl(
1551
+ client: Aptos,
1552
+ account: AptosAccount,
1553
+ request: {
1554
+ typeArguments: [];
1555
+ functionArguments: [];
1556
+ },
1557
+ options?: InputGenerateTransactionOptions,
1558
+ ): Promise<PendingTransactionResponse> {
1559
+ const coder = defaultMoveCoder(client.config.fullnode);
1560
+ const transaction = await client.transaction.build.simple({
1561
+ sender: account.accountAddress,
1562
+ data: {
1563
+ function:
1564
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::claim_all_thl",
1565
+ functionArguments: coder.encodeArray(request.functionArguments),
1566
+ typeArguments: [],
1567
+ },
1568
+ options,
1569
+ });
1570
+ return await client.signAndSubmitTransaction({
1571
+ signer: account,
1572
+ transaction,
1573
+ });
1574
+ }
1575
+ export async function stake<T0 = any>(
1576
+ client: Aptos,
1577
+ account: AptosAccount,
1578
+ request: {
1579
+ typeArguments: [MoveStructId];
1580
+ functionArguments: [bigint, bigint];
1581
+ },
1582
+ options?: InputGenerateTransactionOptions,
1583
+ ): Promise<PendingTransactionResponse> {
1584
+ const coder = defaultMoveCoder(client.config.fullnode);
1585
+ const transaction = await client.transaction.build.simple({
1586
+ sender: account.accountAddress,
1587
+ data: {
1588
+ function:
1589
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::stake",
1590
+ functionArguments: coder.encodeArray(request.functionArguments),
1591
+ typeArguments: request.typeArguments,
1592
+ },
1593
+ options,
1594
+ });
1595
+ return await client.signAndSubmitTransaction({
1596
+ signer: account,
1597
+ transaction,
1598
+ });
1599
+ }
1600
+ export async function unstake<T0 = any>(
1601
+ client: Aptos,
1602
+ account: AptosAccount,
1603
+ request: {
1604
+ typeArguments: [MoveStructId];
1605
+ functionArguments: [bigint, bigint];
1606
+ },
1607
+ options?: InputGenerateTransactionOptions,
1608
+ ): Promise<PendingTransactionResponse> {
1609
+ const coder = defaultMoveCoder(client.config.fullnode);
1610
+ const transaction = await client.transaction.build.simple({
1611
+ sender: account.accountAddress,
1612
+ data: {
1613
+ function:
1614
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::unstake",
1615
+ functionArguments: coder.encodeArray(request.functionArguments),
1616
+ typeArguments: request.typeArguments,
1617
+ },
1618
+ options,
1619
+ });
1620
+ return await client.signAndSubmitTransaction({
1621
+ signer: account,
1622
+ transaction,
1623
+ });
1624
+ }
1625
+ }
1626
+ export namespace view {}
1627
+ }
1628
+
1629
+ const MODULES = JSON.parse(
1630
+ '[{"bytecode":"0xa11ceb0b0700000a0c01002a022a970103c101d407049509a10105b60ad308078913b31a08bc2de001069c2ffc03109833f80f0a9043ca020cda45fe390dd87f3a0000010101020103010401050106010701080109010a010b010c020d020e030f031004110012051306140015060000160800001706000018070000190800001a0800001b0800001c0800001d0600001e0400001f080000200600002106000022060000230600002406000025080000260600002706000028040000290800112a0700082e07000236040100010d37000013430700077f040200000000038c0104010601099601040203010001069c0107020000000013d201070004d40107010000002b00010001002c02010001002d00010001002f030400010030050401000100310604000100320704000100330001000100340801000100350409000100380a0b000100390c0b0001003a000b0001003b050d02000001003c0e0f010001003d050b010001003e100b0001003f110b00010040080b0001004112130001004204140100010044041501000100451613000100460217000100470a04000100480417000100490417010001004a18130001004b18130001004c1304010001004d0a040001004e0a040001004f0a0401000100500a04000100510a0400010052050400010053041700010054041700010055041700010056041700010057191a000100580a17000100591b040001005a081a0001005b1c130001005c1d1e0001005d1f040001005e04170001005f131e0100010060131e000100612017000100620504000100632104010001006405040001006522040001006605040001006722040001006823040001006905040001006a240b010001006b08250001006c0809010001006d26040001006e04190001006f27280100010070260400010071290401000100722a04000100732b04000100742704000100752c1700010076041700010077022d00010078042e0001007904130001007a130f01000112a501040000010ca601301701000111a7010401000110a8011901000111a9013201000111aa013201000111ab010401000107ac0133340203000109a60136170203000109ad0136340203000111ae011301000111af013701000111b0010113000111b101370100010fb201190100010eb3010014000109b4013b040203020105b5010a00000114b6013e17000102b701041701000102b80104400100010bb901041901000109ba0104410203040109bb013b040203000103bc01440401060107b40146040203020103bd013f0401060111be014917000109bf014a4b020300010ec0010414000111c1010901000111c2013701000111bb013201000111c301494d000102a701040f01000112c4010451000102c501520401000106c6015a170204040106bf015b4b020404010ac7010413000113c8015c14000106ad015a340204040106ba01045e0204040111c9010113000113ca015f04000112530417000114530417000101cb010a6101060114cc010a17000107ba0104640207040111cd014917000111ce013701000102cf01001701000102d0010a0401000102b301001301000102d101100401000113d3016c6d000113ba016e15000106b4016f700204040106d5017576020100010cd6017704010001139e017814000102d7017e1301000102d8017f0401000111d9014917000102da01050f0100014d13530654355535553a5c3a5c3c553c5f3f603f203f613f623c633c623a633a624264436506664768356e4f704f615454420e5464564b3f4b4f71597259755976591a3f7b607b627b637b567b43343f7d065f4f80014f81014f82014f83014f64605542543a860159667187015988011966798801138a013f6235633580013f81013f8b013f668001543c303f614f66850163425c4282013f83013f1d3f8d013f0105010815030503030306080907081308160002060c030205081503050815081502050302030301060c010b1701081802060c05010b1701090103060c070809070813010b1701090003060c050305060c070809070813060803030203060803010301040108190106080301010203081501081602010303070a0809060803030303030303030f0f010f04060c03030302060809081602060c0402060c0102060c0a0303060c030b17010900030303081505070809070813030608030303060c0303020b170109000b1701081805060c030303030207080908160307080906080303020608130816030108150815010a030d081505060b1a020508150308150a030608040303081506081008150302060a09000609000108090208150303060b1a02090009010900060901010609010203081302060b1c02090009010900020815081502081504040816030f030208160f03070b1c02090009010900090102081603070b1c0208160f0708040b1c0208160303050816081602050a020109000102010b1c0209000901020816080301080802070b1b010900090005081505060b1a02050815070801081503070b1a02090009010900090101080008070804030303070809030708100708130206081506081502070b1c0209000901090001070901070815081506080103081508150301060815010608010108180a0c081507080403030708090b170108180b17010818070810070813010c02070b170109000b17010900090815070804070809070809050c081605070813010901040708130816030816010802060c081507080407080407080907081302081607080a020816081902060b1d020900090106090002070b1d0209000901060900020708190302081606080a010b1d020900090103070819030301080d010b1b01090001080e010811010b1a0209000901030608040306080909081508150608150a030815081508150308150b010307080405030303050c0307080309010608040f030608090308160608030309010608040f030608090303060803081601070801030816081e07080a02030401081e02081e0303070b1d020900090109000901020b1f0109000b1f01090101080b02010708010107080707081603081e07080a0708190a08160a081601060b1d0209000901010a090001070a09000106081901080c010708060503030a030a0307081401070814130b17010818030308150608040708040b1c0208160f0608090708090b1c02030813050c0b170108180b1c02081603081607081008160507081301060b1701090002050b1701090001080f0801081505060b1a020508150815030608100608130c01030f0f0f030f0816030306081006081306070813081607081308160816030c0c0b17010818030815070804070804070809050b17010818070810050708130108120e01080308160816070804050303070809080303050c0305060803030f030305030f0303081604070804070809030509081508150608150815081508150815030815076661726d696e67076163636f756e7404636f696e056576656e74066f7074696f6e067369676e65720a73696d706c655f6d61700b736d6172745f7461626c6506737472696e67057461626c650974696d657374616d7009747970655f696e666f06766563746f720874686c5f636f696e0b74686c5f7665746f6b656e066f7261636c650f7468616c615f6c705f6f7261636c650d66697865645f706f696e743634077061636b6167650c726174655f6c696d69746572076d616e616765721a426f6f73744d756c7469706c6965724368616e67654576656e740e426f6f737465644661726d696e670a436c61696d4576656e740945706f6368496e666f074661726d696e670d4661726d696e674576656e7473094661726d696e675632095061757365466c61670f506f6f6c4368616e67654576656e7408506f6f6c496e666f09526174654c696d69741a526174654c696d69744d61785174795570646174654576656e7422526174654c696d697457696e646f774475726174696f6e5570646174654576656e741052657761726445706f63684576656e740a5374616b654576656e740c5374616b654576656e745632065374616b65720c556e7374616b654576656e740e556e7374616b654576656e7456320c55736572506f6f6c496e666f11566554484c47617465644661726d696e670c4669786564506f696e743634156163636f756e745f7374616b696e675f76616c75651f6163636f756e745f7374616b696e675f76616c75655f676976656e5f616464136163636f756e745f766554484c5f76616c756506537472696e67126163637275655f757365725f726577617264086164645f706f6f6c1d6170706c795f616e645f7570646174655f626f6f73745f666163746f72126170706c795f626f6f73745f666163746f7210626f6f73745f6d756c7469706c6965721a626f6f73745f6d756c7469706c6965725f676976656e5f61646416626f6f737465645f6661726d696e675f706172616d7304436f696e0354484c0d636c61696d5f616c6c5f74686c19636c61696d5f616c6c5f74686c5f666f725f76657374696e6716636c61696d5f616c6c5f74686c5f696e7465726e616c12636c61696d5f65787472615f7265776172641c636c61696d5f65787472615f7265776172645f66726f6d5f706f6f6c09636c61696d5f74686c15636c61696d5f74686c5f666f725f76657374696e6713636c61696d5f74686c5f66726f6d5f706f6f6c12636c61696d5f74686c5f696e7465726e616c16636c616d705f7365636f6e64735f696e5f65706f63681b636f696e5f726174655f6c696d697465725f72656d61696e696e670b526174654c696d6974657216636f696e5f726174655f6c696d697465725f766965771563757272656e745f65706f63685f7365636f6e647312656c696769626c655f676976656e5f61646419656e61626c655f726174655f6c696d69745f666561747572651c656e61626c65645f726174655f6c696d697465725f66656174757265186578697374735f636f696e5f726174655f6c696d697465721d6765745f626f6f737465645f616d6f756e745f726f756e645f646f776e1b6765745f626f6f737465645f616d6f756e745f726f756e645f75701b696e6372656d656e745f636f696e5f726174655f6c696d6974657204696e69740f696e69745f70617573655f666c61671f696e69745f726174655f6c696d697465725f69665f6e6f745f6578697374731a696e697469616c697a655f626f6f737465645f6661726d696e6715696e697469616c697a655f6661726d696e675f76321e696e697469616c697a655f766574686c5f67617465645f6661726d696e670b696e697469616c697a65641b696e697469616c697a65645f626f6f737465645f6661726d696e670e696e697469616c697a65645f76321f696e697469616c697a65645f766574686c5f67617465645f6661726d696e670d69735f7374616b655f636f696e1169735f76657374696e675f7369676e65721d6d6173735f7570646174655f706f6f6c735f74686c5f72657761726473126d61785f656c696769626c655f7374616b65076d756c5f646976116d756c5f753235365f6469765f753235360d6e65775f74686c5f65706f6368067061757365641f706f6f6c5f6163635f65787472615f7265776172645f7065725f73686172651d706f6f6c5f6163635f74686c5f7265776172645f7065725f736861726514706f6f6c5f6861735f7265776172645f636f696e1c7365745f626f6f73745f7363616c696e675f666163746f725f627073137365745f636f696e5f726174655f6c696d69741c7365745f6d61785f626f6f73745f6d756c7469706c6965725f627073097365745f70617573651e7365745f726174655f6c696d69745f77696e646f775f6475726174696f6e107365745f76325f6f6e6c795f6d6f6465247365745f766574686c5f67617465645f6661726d696e675f6578656d70745f706f6f6c73257365745f766574686c5f67617465645f6661726d696e675f7468726573686f6c645f627073057374616b650c7374616b655f616d6f756e74177374616b655f616e645f7265776172645f616d6f756e740e7374616b655f696e7465726e616c0874686c5f6e616d6507756e7374616b6510756e7374616b655f696e7465726e616c137570646174655f65787472615f726577617264187570646174655f706f6f6c5f65787472615f726577617264167570646174655f706f6f6c5f74686c5f726577617264117570646174655f74686c5f72657761726419757365725f706f6f6c5f6861735f7265776172645f636f696e0c76325f6f6e6c795f6d6f646519766554484c5f73686f727466616c6c5f676976656e5f61646420766574686c5f67617465645f6661726d696e675f6578656d70745f706f6f6c7321766574686c5f67617465645f6661726d696e675f7468726573686f6c645f6270731577697468647261775f726174655f6c696d6974656409757365725f6164647211707265765f626f6f73745f666163746f7211637572725f626f6f73745f666163746f7211626f6f73745f6d756c7469706c696572730a536d6172745461626c6518626f6f73745f7363616c696e675f666163746f725f627073186d61785f626f6f73745f6d756c7469706c6965725f6270730a7374616b655f636f696e0b7265776172645f636f696e06616d6f756e740973746172745f73656307656e645f7365630e7265776172645f7065725f73656309706f6f6c5f696e666f0974686c5f65706f636815746f74616c5f74686c5f616c6c6f635f706f696e74137265776172645f65706f63685f6576656e74730b4576656e7448616e646c650c7374616b655f6576656e74730e756e7374616b655f6576656e74730c636c61696d5f6576656e747312706f6f6c5f6368616e67655f6576656e74730370696414707265765f74686c5f616c6c6f635f706f696e74136e65775f74686c5f616c6c6f635f706f696e740f74686c5f616c6c6f635f706f696e74106c6173745f726577617264735f736563055461626c65156163635f726577617264735f7065725f73686172650d65787472615f726577617264731265787472615f7265776172645f636f696e731777696e646f775f6475726174696f6e5f7365636f6e647312636f696e5f726174655f6c696d69746572730953696d706c654d617009636f696e5f747970650e77696e646f775f6d61785f7174790e626f6f737465645f616d6f756e740c626f6f73745f666163746f721a6c6173745f6163635f726577617264735f7065725f736861726507726577617264730d7468726573686f6c645f6270730c6578656d70745f706f6f6c73187265736f757263655f6163636f756e745f6164647265737308636f6e7461696e73047a65726f096765745f7072696365036d756c03646976036f6e6513626f72726f775f776974685f64656661756c7406626f72726f7706656e636f6465066469765f6670116465636f64655f726f756e645f646f776e066164645f66701c6765745f616e645f7570646174655f70726963655f62795f6e616d650762616c616e6365067570736572740a616464726573735f6f660e69735f726f6c655f6d656d6265721369735f636f696e5f696e697469616c697a656408646563696d616c7309747970655f6e616d65036e6577036164640a656d69745f6576656e7404656d69740265710a626f72726f775f6d75740c746f74616c5f737570706c79086672616374696f6e066d756c5f6670036d696e177265736f757263655f6163636f756e745f7369676e6572056d657267650c636f6e7461696e735f6b65790b6e6f775f7365636f6e64730972656d61696e696e670f6465636f64655f726f756e645f75700761637175697265106e65775f6576656e745f68616e646c650d69735f617574686f72697a656403677465067375625f66701569735f6163636f756e745f72656769737465726564087265676973746572087472616e7366657211526174654c696d69746572436f6e6669670a6e65775f636f6e666967064f7074696f6e046b65797307726576657273650576616c7565076465706f736974036c74650877697468647261776b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99000000000000000000000000000000000000000000000000000000000000000107fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615092e95ed77b5ac815d3fbc2227e76db238339e9ca43ace45031ec2589bea5b8c4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee987978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac93aa044a65a27bd89b163f8b3be3777b160b09a25c336643dcc2878dfd8f2a8d03081027000000000000030800000000000000000308307500000000000003088051010000000000030816000000000000000308140000000000000003080500000000000000030864000000000000000308100000000000000003080e0000000000000003080100000000000000030802000000000000000308130000000000000003081a0000000000000003081b0000000000000003080a00000000000000030817000000000000000308180000000000000003080c000000000000000308090000000000000003080700000000000000030808000000000000000308060000000000000003080b000000000000000308150000000000000003081f00000000000000030804000000000000000308200000000000000003080d00000000000000030803000000000000000308190000000000000003081d0000000000000003081c0000000000000003080f0000000000000003081100000000000000030812000000000000000a02100f6661726d696e675f6d616e61676572030800e1f50500000000030840420f00000000000f20ffffffffffffffff00000000000000000000000000000000000000000000000002010805201bf23f0881f8fa149500ff6b7a047f608967c028a8ad7a2100caa84833ce851d05203c4a58b4a8dffe6d14448072efcdd5a0e0089a22c6837b94f1d7e8bb1552137f0a030100126170746f733a3a6d657461646174615f7631e30f210000000000000000104552525f554e415554484f52495a45440b4572726f7220436f64657301000000000000001f4552525f4641524d494e475f414c52454144595f494e495449414c495a4544000200000000000000194552525f4641524d494e475f554e494e495449414c495a4544000300000000000000194552525f5041434b4147455f554e494e495449414c495a4544000400000000000000194552525f4d414e414745525f554e494e495449414c495a4544000500000000000000164552525f434f494e5f554e494e495449414c495a4544000600000000000000104552525f494e56414c49445f54494d450007000000000000001a4552525f494e56414c49445f5245574152445f5045525f444159000800000000000000164552525f494e56414c49445f5354414b455f434f494e000900000000000000174552525f494e56414c49445f5245574152445f434f494e000a00000000000000124552525f494e56414c49445f414d4f554e54000b00000000000000104552525f494e56414c49445f55534552000c00000000000000134552525f494e56414c49445f504f4f4c5f4944000d000000000000000e4552525f4e4f5f52455741524453000e00000000000000124552525f4455504c49434154455f504f4f4c43446570726563617465642e205765206e6f7720616c6c6f77206d756c7469706c6520706f6f6c7320746f2068617665207468652073616d65207374616b6520636f696e0f000000000000001d4552525f54484c5f414c4c4f435f504f494e545f544f4f5f4c41524745001000000000000000124552525f4449564944455f42595f5a45524f0011000000000000002b4552525f564554484c5f47415445445f4641524d494e475f414c52454144595f494e495449414c495a4544001200000000000000254552525f564554484c5f47415445445f4641524d494e475f554e494e495449414c495a4544001300000000000000264552525f494e454c494749424c455f464f525f564554484c5f47415445445f4641524d494e470014000000000000001b4552525f434f494e5f4e4f545f5448414c415f4c505f544f4b454e0015000000000000002d4552525f494e56414c49445f564554484c5f47415445445f4641524d494e475f5448524553484f4c445f425053001600000000000000214552525f424f4f535445445f4641524d494e475f554e494e495449414c495a4544001700000000000000204552525f494e56414c49445f424f4f53545f5343414c494e475f464143544f52001800000000000000204552525f494e56414c49445f4d41585f424f4f53545f4d554c5449504c4945520019000000000000000a4552525f504155534544001a00000000000000204552525f494e53554646494349454e545f4d414e414745525f42414c414e4345001b00000000000000294552525f494e53554646494349454e545f5245534f555243455f4143434f554e545f42414c414e4345001c000000000000001a4552525f524154455f4c494d495445525f554e454e41424c4544001d00000000000000204552525f524154455f4c494d495445525f414c52454144595f454e41424c4544001f000000000000001b4552525f494e56414c49445f57494e444f575f4455524154494f4e002000000000000000214552525f4e4f5f524154455f4c494d495445525f464f525f434f494e5f545950450064000000000000000e4552525f4445505245434154454400050c5374616b654576656e7456320104000e556e7374616b654576656e7456320104001a426f6f73744d756c7469706c6965724368616e67654576656e740104001a526174654c696d69744d61785174795570646174654576656e7401040022526174654c696d697457696e646f774475726174696f6e5570646174654576656e7401040017067061757365640101000c7374616b655f616d6f756e740101000c76325f6f6e6c795f6d6f64650101000d69735f7374616b655f636f696e01010010626f6f73745f6d756c7469706c69657201010012656c696769626c655f676976656e5f616464010100126d61785f656c696769626c655f7374616b65010100136163636f756e745f766554484c5f76616c7565010100156163636f756e745f7374616b696e675f76616c756501010016626f6f737465645f6661726d696e675f706172616d7301010016636f696e5f726174655f6c696d697465725f76696577010100177374616b655f616e645f7265776172645f616d6f756e74010100186578697374735f636f696e5f726174655f6c696d6974657201010019766554484c5f73686f727466616c6c5f676976656e5f6164640101001a626f6f73745f6d756c7469706c6965725f676976656e5f6164640101001b636f696e5f726174655f6c696d697465725f72656d61696e696e670101001c656e61626c65645f726174655f6c696d697465725f666561747572650101001d706f6f6c5f6163635f74686c5f7265776172645f7065725f73686172650101001f6163636f756e745f7374616b696e675f76616c75655f676976656e5f6164640101001f696e697469616c697a65645f766574686c5f67617465645f6661726d696e670101001f706f6f6c5f6163635f65787472615f7265776172645f7065725f736861726501010020766574686c5f67617465645f6661726d696e675f6578656d70745f706f6f6c7301010021766574686c5f67617465645f6661726d696e675f7468726573686f6c645f6270730101000002037b057c08157d08150102037e0b1a02050815800103810103020203820108168301081684010303020385010386010387010304020388010a0809890108038a01030502058b010b1b01080d8d010b1b01080e8e010b1b0108118f010b1b01080290010b1b01080806020176010702015e0108020491010382010816920103930103090207820108166b0394010395010b1c0208160397010b1c0208160f98010b1c020816080399010a08160a02029a01039b010b1d02081608190b02029d0108169e01040c02019a01030d0204830108168501038601038701030e0203910103820108168401030f0205910103820108168401039f0103a001081510020188010b1c0203081311020391010382010816840103120205910103820108168401039f0103a0010815130203840103a1010b1c0208160fa2010b1c02081603140202a30103a4010a03000100040104101404050b0006000000000000000006000000000000000011010201010004010410142f800111490c08114c2b040c090a00291020041d0e080e01380004110b0901114e020b0910000b014231100114114f0b0211500725115102114c2a0110020c050a000c0411520c030b050b040e033801140c070b002b100c0d0a09100041310c0a114e0c0e0600000000000000000c0b0a0b0a0a230478053b0e080e0b380004440b0b060100000000000000160c0b05360a0d10030a0b380204510a0d10030a0b38031004140c0605530600000000000000000c060b0611560a07115711580c0f0a010a0b2104610b0f0a02160c0f0a0f0600000000000000002404730a0910000a0b4231100114114f0b0f11500c0c0b0e0b0c11590c0e0b0b060100000000000000160c0b05360b0d010b09010b0e072511510202010000380d113f115a0c010b00115b0c020b010b02341150072511510203000000393d0b0010050a023804140c050a010a020c032e0b0311462004180a010f060a024a000000000000000000000000000000000000000000000000000000000000000038050a010f070a0206000000000000000038060a011004140a050a0110060a02380414170727112d340c040a040600000000000000002404370a0110070a023807140c060a010f070a020b060b041638060b010f060b020b053805020401040304050a3d6e0a00115d0724115e0406050a0b00010701271124040d05110b0001070b273808041405180b00010706273809072821041d05210b00010705270b00380a114c0c06380b0c07113f0c080a062a040c030a03100041310c050a030f000a0310080a03100914112a0a031009140a01160a030f09150a031009140726250447054b0b0301072127380c0c040d040a080a0310081116380d380e0c020d020b084a0000000000000000000000000000000000000000000000000000000000000000380f0b030f000a070600000000000000000a010b040b02381040190000000000000000120944310b062a050f0a0b050b070600000000000000000b01120838110205000003010410451f114c2a010c050a0510020c040a000c0311520c020b040b030e023801140c060a000a060a0111060b050f020a000a0138120b000b060b011200381302060000020410484f0e010e0211670405020b002a100c09114c2a040c030600000000000000000c060a03100041310c050a060a0523044a05160a030f000a0643310c070a0910030a06380204430a090f030a0638140c0a0a0a1004140c080a020a0111570a08115011580c040a070a0a0b080a0310080a0310091411410b070b0a0b040a0310080a03100914113e05450b07010b06060100000000000000160c0605110b09010b030102070100010104040b0006000000000000000011080208010001014c33114c2b010c040b00115b340a0116066400000000000000180c051169340b01160c080a080600000000000000002104180b04011152020b050b08116a0c060a04100b140700116a0c030b060b03116b060100000000000000116c0c070b04100c140700116a0c020e020e07116d140209010001014e0a114c2b010c000a00100b140b00100c14020a01000701040506070a100412112f20040405080b0001071e271147040e0b00013815020b00115d110c020b010006010405070a100418112f20040405080b0001071e271126040b050f0b0001070b270b001129041305150701270b01110c020c0000050104050a1050480a002910040405060717270a0011070c020a000b0211050b002a100c0938150c08114c2a040c030a03100041310c040600000000000000000c050a050a04230442051f0a0910030a053802043d0a030f000a0543310c060a090f030a0538140c0a116f0c010e010b060b0a0a0310080a0310091411110c070d080b0738160b05060100000000000000160c05051a0b09010b03010b08020d010006010405070a10535d112f20040405080b0001071e270b00115d0c090a092910040f0511071727114c0c06116f0c070a062a040c030a010a031000413123041f05230b03010712270b030f000a0143310c040a04100114380b21042f05330b040107152738170c080b04100d0b083818043b053d0713270a092b1010030a013802044405460712270a0911070c020a090b0211050b062a040f000a0143310c050b092a100f030b0138140c0a0e070b050b0a3819020e000002050a5527380b0c060a010a0611430a010a020a060c040c032e0b030b0411030a0210070a063807140c050b020f070a0606000000000000000038060b00115d2a050f0e0b011001140b060a051202381a0b05381b020f01000701040506070a100413112f20040405080b0001071e271147040e0b00013815020b00115d0b0111120210010006010405070a100419112f20040405080b0001071e271126040b050f0b0001070b270b001129041305150701270b010b0211120211000002050a55280a010b030b041144113f0c080a010a020a080c060c052e0b050b0611030a0210070a083807140c070b020f070a0806000000000000000038060b00115d2a050f0e0b011001140b080a071202381a0b07381c02120000050104050a10573b0a00291004040506071727114c2a040c040a010b041000413123041005120712270a002a1010030a0138020419051b0712270a0011070c030a000b031105114c2a040c050a050f000a0143310c060b002a100f030b0138140c07116f0c020e020b060b070a0510080b0510091411110213000000091e0a000a01100f1423040b0b01100f140c03051c0a000a011010142404160b011010140c02051a0b01010b000c020b020c030b0302140000010a581b111904030505072027114c2a0a0c01380b0c000a0110110e00381d041005140b0101071b270b010f110e00381e1173117402150100010a5d1a111904030505072027114c2b0a0c01380b0c000a0110110e00381d041005140b0101071b270b0110110e00381f140216000000040411730b00111302170100040104101404080b000b010b021148010120021801040051160b00115d0724115e04060508070127111920040c050e071f27116f0c010e0107033820120a2d0a02190100000403114c290a021a0100010a190e114c290a2004060902380b0c00114c2b0a10110e00381d021b00000004050b010b0011501158021c00000004050b010b0011501177021d0000010a190f382120040402380b0c01114c2a0a0f110e01381e11730b001178021e01040051310b00115d072921040605080701271179040b050d071d27117a04100512071a2711242004160518070a27116f0c010e0140310000000000000000060000000000000000060000000000000000060000000000000000120306000000000000000012042d040e010e0138220e0138230e0138240e0138250e01382612052d05021f010400510f0b00115d0724115e04060508070127116f0c010e010812072d0702200000010a5d181119040305070b0001072027114c2b0a0c02380b0c010b0210110e01381d04140b0001020b0032000000000000000000000000000000003827022101040051150b00117c04040506070127112520040a050c070a27116f0c010e0138280701070212012d01022201040051130b00117c04040506070127112620040a050c070a27116f0c010e010912062d06022301040051140b00117c04040506070127112720040a050c072227116f0c020e020b014013000000000000000012142d1402240000000403114c290402250000000403114c290102260000000403114c290602270100000403114c2914022801000104652a114c2b040c010600000000000000000c020a020a0110004131230425050c0a0110000a0242310c030a031001140a0021041e0b0101080b03101214020b03010b02060100000000000000160c0205050b010109060000000000000000022900000004050b00115d072a21022a000000091b0a002e41310c040600000000000000000c030a030a04230416050b0a000a0343310a010a0211440b03060100000000000000160c0305060b01010b0001022b010004010410146642114a0c090a0906000000000000000021040a080727340211490c050e050e013800041408072734020a0011000c080b0011020c0a0a080a0911500c030e030c040a0a070011500c020b040e02117e042b09060000000000000000020b0a070011500b0911510b08117f0c06114c2b0410000b014231100114114f0c07080b060b0711571158022c00000004110a0206000000000000000022040505070708270b004d0b014d180b024d1a34022d000000040e0a024a000000000000000000000000000000000000000000000000000000000000000022040505070708270b004d0b01180b021a022e010402040567b7010a00115d0c070a070724115e0408050c0b00010701271124040f05130b0001070b2738290416051a0b000107062711730c090a010600000000000000002104220a090c010a010b0926042b0a020a01240c04052d090c040b04043005340b00010716270b0307031a0c0d0a0d06000000000000000024043d05410b0001071427116f0c0c114c0c0b0a0b382a20044b0e0c382b0a0b2a040c060a060f080c0e0a060f000a0e0b061009140c052e0b05112a0a0e1013140a0e1010140a0e2e111617180c0a0a0d0a020a0117180c080a0a0a08240486010b00010a0b382c0a0a0a081726047b057f0b0e01070e270e0c0b070b0a0b0817382d05a1010a0a0a0823049f010b07382c0a080a0a17260492010598010b0e010b0001070d270b000a0b0b080b0a17382d05a1010b00010a010a0e0f0f150a020a0e0f10150a0d0b0e0f13150b0b2a050f14113f0b010b020b0d120d382e022f010001070405114c2b07101514023001000104686011242004054a000000000000000000000000000000000000000000000000000000000000000002114c2b040c020a000a021000413123040f05130b02010712270b0210000b0042310c05380b0c070a050a0711322004230b05014a0000000000000000000000000000000000000000000000000000000000000000020a0510050a073804140c030a05100d0a07382f0c080a0811160c090a0510160b073807140a0811130c040a090a04250440080c0105460a05101714060000000000000000210c010b01044e0b08010b05010b03020b090b04170b08101314180c060b030b0607270b051017144d112d16023101000104697511242004054a000000000000000000000000000000000000000000000000000000000000000002114c2b040c020a000a021000413123040f05130b02010712270a0210000b0042310c05113f0c090a050a0911322004250b05010b02014a0000000000000000000000000000000000000000000000000000000000000000020a0510050a093804140c030a051012140600000000000000002104370b05010b02010b03020a0210080c080a0811160c070a0510160b093807140a0811130c040a070a0425044c080c0105520a05101714060000000000000000210c010b01045c0b08010b05010b02010b03020b070b04170b081013140a05101214180b02100914112c0c060b030b0607270b051017144d112d16023200000004050b0010050b0138300233010401016a1c0b00115d0724115e040605080701271125040b050d0704270a0107262504120514071027114c2a010c020b010b020f0b1502340104010a6b260b00115d0724115e040605080701271119040b050d072027380b0c02114c2a0a0c040a041018140a011184010c030b040f110a020b031173118501383101010b020b01120b383202350104010172250b00115d0724115e040605080701271125040b050d0704270a0107262504160a010700260c020518090c020b02041b051d071127114c2a010c030b010b030f0c1502360104010773100b00115d0724115e04060508070127114c2a070c020b010b020f151502370104010a744f0b00115d0724115e040605080701271119040b050d0720270a010600000000000000002404120514071927114c2a0a0c050a010a050f18150a05101138330c080d0838340b080c070e0741190c030a03060000000000000000240447052b0d0745190c020a050f110e02381e0c060a010b062e1189011184010c040a050f110b020b041173118501383101010b03060100000000000000170c0305260b05010b07461900000000000000000b01120c38350238010401067a130b00117c0404050607012711260409050b070b27114c2a060c020b010b020f1915023901040204147b350b00117c0404050607012711270409050b072327114c2b04100041310c030a010c040d0438360b040c050e0541130c020a0206000000000000000024042b051e0d0545130a0323042405260712270b02060100000000000000170c0205190b0546130000000000000000114c2a140c060b010b060f1a15023a010401147c1a0b00117c0404050607012711270409050b0723270a0107002504100512071827114c2a140c020b010b020f1b15023b01000801040506070a10147dc301112f20040405080b0001071e271125040b050f0b00010704270e0238370c040a04060000000000000000240417051b0b0001070f270a00115d0c14114c0c0d116f0c0e0a0d2b040c070a010a071000413123042c05320b00010b07010712270b0710000a0142310c0a0a0a100114380b21043e05440b00010b0a010715270b0a1001140c110a14291020045338380c0c0b000b0c12102d1005550b00010a140a010a041117045b055d070c270a142a100c12113f0c130a1210030a01380220047d380e0c090d090a134a0000000000000000000000000000000000000000000000000000000000000000380f380c0c100d100b13060000000000000000380d0b120f030a010600000000000000000b090b1012133839057f0b12010a1411070c060a140a0611050a0d2a040c080a080f000a0143310c0b0b142a100f030a0138140c15114704980138150c0305a2010e0e0a0b0a150a0810080a0810091411110c030b030c0f0a040a06111b0c050b0b0b150a050a0810080b08100914113e0a0d383a2004b7010e0e383b0b0d0b02383c0b010b110b040b050b06120f383d0b0f023c010002011081013e1124200406080c02050a0a002910200c020b020410060000000000000000060000000000000000114e020a002b100c080a0810030a01380220041f0b0801060000000000000000060000000000000000114e020b0810030b0138030c09114c2b0110020c050b000c0411520c030b050b040e033801140c060b091004140c070a0711560a06115711580b070b06023d01000204108201641124200406080c02050a0a002910200c020b02040f060000000000000000060000000000000000020b002b100c0c0a0c10030a01380220041d0b0c01060000000000000000060000000000000000020b0c10030a0138030c0d380b0c090a0d1004140c0a0a0d10070a09383e04340a0d10070a093807140c0305360600000000000000000c030b030c0b0a0d10060a09383004440b0d10060a093804140c0405480b0d014a00000000000000000000000000000000000000000000000000000000000000000c040b040c060b09113f2104520b0111310c0505550b01383f0c050b050c080a0a0b080b06170727112d340c070b0a0b0b0b0716023e00000083013e0a000b030b0411440a000a01113f0c060c052e0b050b0611030600000000000000000c0a0a0a0a00101c411923042d05160a00101c0a0a4219140c090a000a0911430a000a010b090c080c072e0b070b0811030b0a060100000000000000160c0a050f0a001017140a02160b000f17150a011004140b02160b010f0415023f00000004023840024001000701040506070a1084019501112f20040405080b0001071e271125040b050f0b00010704270a0206000000000000000024041405180b0001070f270b00115d0c0d0a0d2910041f0521071727114c0c0a0a0a2a040c070a010a071000413123042d05310b07010712270b070f000a014331100114380b21043b053d0715270a0d11070c060a0d0a0611050b0d2a100c0c0a020a06111c0c050a0c10030a013802045005540b0c010712270b0c0f030a0138140c0e0a0e1004140a0526046005640b0e01070f270b0a2a040c080a080f000a0143310c091147047138150c04057d116f0c030e030a090a0e0a0810080a0810091411110c040b040c0b0a090b0e0a050a0810080b0810091411410b010b091001140a020b050b06121238410b02381b0b0b024100000083013e0a000b030b0411440a000a01113f0c060c052e0b050b0611030600000000000000000c0a0a0a0a00101c411923042d05160a00101c0a0a4219140c090a000a0911430a000a010b090c080c072e0b070b0811030b0a060100000000000000160c0a050f0a001017140a02170b000f17150a011004140b02170b010f0415024201040204058601f3010a00115d0c0a0a0a0724115e0408050c0b00010701271124040f05130b0001070b2738080416051a0b0001070627380b113f22041f05230b0001071327114c0c10116f0c110a10383a20042d0e11383b0a102a040c090a010a0910004131230437053d0b00010b09010712270b090f000b0143310c0d380b0c0811730c0c0a0206000000000000000021044c0a0c0c020a020b0c2604550a030a02240c050557090c050b05045a05600b0d010b00010716270b0407031a0c120a12060000000000000000240469056f0b0d010b00010714270a0d100d0a083818047b0a0d100d0a08382f140c0605800106000000000000000006000000000000000006000000000000000012030c060b060c0e0a0d0a080c072e0b07113220049d010a0d0f050a084a0000000000000000000000000000000000000000000000000000000000000000380f0a0d0f160a080a02380d0a0d0f0d0a080a0e38420a0d0f1c0a0844190a0d0a0811430b0d0f0d0a080a020a030a12120338430e0e1013140e0e1010140e0e111617180c0f0a120a030a0217180c0b0a0f0a0b2404d0010b00010a1038440a0f0a0b172604c70105c901070e270e110b0a0b0f0b0b17384505e9010a0f0a0b2304e7010b0a38440a0b0a0f172604dc0105e0010b0001070d270b000a100b0b0b0f17384505e9010b00010b102a050f140b080b020b030b12120d382e02430000008701450a00100d0a01382f0c020a0211160c060a0010160a013807140a0211130c030a060a032504190b00010b0201020a000f160a010a0638060a001017140600000000000000002104290b00010b0201020b060b03170b02101314180c050a0010050a013804140c040a000f050b010b040b0507270b001017144d112d1638050244000000880152113f0c070a0111160c060a0010160a073807140a0111130c030a060a032504160b01010b0001020a000f160a070a0638060a001012140600000000000000002104260b01010b0001020a001017140600000000000000002104310b01010b0001020b060b03170b011013140a00101214180b02112c0c050a0010050a073804140c040a000f050b070b040b0507270b001017144d112d1638050245010402040589015a0b00115d0724115e040605080701271124040b050d070b27114c0c060a062a040c030a030f000a0310080a03100914112a0a010a031000413123042105250b03010712270a030f000a0143310c040a041012140c050a020a040f12150a050a0222044c0a031009140a05170a02160a030f09150b031009140726250447054b0b0401072127054e0b03010b062a050f0a0b010b041001140b050b0212083811024600000004050b0010070b01383e024701000106170c11260408114c2b061019140c00050a090c000b000248010004010410148a0137114a0c0a0a0a06000000000000000021040a09114e114e020a000b010b0211010c080b0011020c0b0a080a0a11500c040e040c050a0b070011500c030b050e03118c01042409114e114e020b080b0a1150070011510b0b117f0c07113f115a0c090a070b0911570c06080b070b060249010001142e0d1127200406072b0c00050b114c2b14101a140c000b00024a01000114130d11272004060600000000000000000c00050b114c2b14101b140c000b00024b0000010a51080a003846116f0c010e010b00384702040009000100100013000904130113020401040205040101010209050503030003010a010902030205000700090309010a00060014011400090600","abi":{"address":"0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99","name":"farming","friends":[],"exposed_functions":[{"name":"account_staking_value","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address"],"return":["0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"account_staking_value_given_add","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address","u64","u64"],"return":["0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"account_veTHL_value","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address"],"return":["0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"add_pool","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u64"],"return":[]},{"name":"boost_multiplier","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address"],"return":["0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"boost_multiplier_given_add","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address","u64"],"return":["0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"boosted_farming_params","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["u64","u64"]},{"name":"claim_all_thl","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":["0x1::coin::Coin<0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615::thl_coin::THL>"]},{"name":"claim_all_thl_for_vesting","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":["&signer","address"],"return":["0x1::coin::Coin<0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615::thl_coin::THL>"]},{"name":"claim_extra_reward","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]}],"params":["&signer","u64"],"return":["0x1::coin::Coin<T1>"]},{"name":"claim_thl","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u64"],"return":["0x1::coin::Coin<0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615::thl_coin::THL>"]},{"name":"claim_thl_for_vesting","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[],"params":["&signer","address","u64"],"return":["0x1::coin::Coin<0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615::thl_coin::THL>"]},{"name":"coin_rate_limiter_view","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]}],"params":[],"return":["0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac::rate_limiter::RateLimiter"]},{"name":"eligible_given_add","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address","u64","u64"],"return":["bool"]},{"name":"enable_rate_limit_feature","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":[]},{"name":"enabled_rate_limiter_feature","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["bool"]},{"name":"exists_coin_rate_limiter","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]}],"params":[],"return":["bool"]},{"name":"init","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":[]},{"name":"init_pause_flag","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":[]},{"name":"initialize_boosted_farming","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":[]},{"name":"initialize_farming_v2","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":[]},{"name":"initialize_vethl_gated_farming","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64"],"return":[]},{"name":"initialized_vethl_gated_farming","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["bool"]},{"name":"is_stake_coin","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["0x1::string::String"],"return":["bool","u64"]},{"name":"max_eligible_stake","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address","u64"],"return":["bool","u64"]},{"name":"new_thl_epoch","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64","u64","u64"],"return":[]},{"name":"paused","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["bool"]},{"name":"pool_acc_extra_reward_per_share","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]}],"params":["u64"],"return":["u256"]},{"name":"pool_acc_thl_reward_per_share","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["u64"],"return":["u256"]},{"name":"set_boost_scaling_factor_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64"],"return":[]},{"name":"set_coin_rate_limit","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u128"],"return":[]},{"name":"set_max_boost_multiplier_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64"],"return":[]},{"name":"set_pause","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","bool"],"return":[]},{"name":"set_rate_limit_window_duration","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64"],"return":[]},{"name":"set_v2_only_mode","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","bool"],"return":[]},{"name":"set_vethl_gated_farming_exempt_pools","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","vector<u64>"],"return":[]},{"name":"set_vethl_gated_farming_threshold_bps","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64"],"return":[]},{"name":"stake","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u64","0x1::coin::Coin<T0>"],"return":["0x1::coin::Coin<0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615::thl_coin::THL>"]},{"name":"stake_amount","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address","u64"],"return":["u64","u64","0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"stake_and_reward_amount","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[{"constraints":[]}],"params":["address","u64"],"return":["u64","u64"]},{"name":"unstake","visibility":"public","is_entry":false,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u64","u64"],"return":["0x1::coin::Coin<T0>","0x1::coin::Coin<0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615::thl_coin::THL>"]},{"name":"update_extra_reward","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u64","u64","u64","u64"],"return":[]},{"name":"update_thl_reward","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer","u64","u64"],"return":[]},{"name":"v2_only_mode","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["bool"]},{"name":"veTHL_shortfall_given_add","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":["address","u64","u64"],"return":["bool","0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64","0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"]},{"name":"vethl_gated_farming_exempt_pools","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["vector<u64>"]},{"name":"vethl_gated_farming_threshold_bps","visibility":"public","is_entry":false,"is_view":true,"generic_type_params":[],"params":[],"return":["u64"]}],"structs":[{"name":"BoostMultiplierChangeEvent","is_native":false,"is_event":true,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"user_addr","type":"address"},{"name":"prev_boost_factor","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"},{"name":"curr_boost_factor","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"}]},{"name":"BoostedFarming","is_native":false,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"boost_multipliers","type":"0x1::smart_table::SmartTable<address, 0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64>"},{"name":"boost_scaling_factor_bps","type":"u64"},{"name":"max_boost_multiplier_bps","type":"u64"}]},{"name":"ClaimEvent","is_native":false,"is_event":false,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"stake_coin","type":"0x1::string::String"},{"name":"reward_coin","type":"0x1::string::String"},{"name":"amount","type":"u64"}]},{"name":"EpochInfo","is_native":false,"is_event":false,"abilities":["copy","drop","store"],"generic_type_params":[],"fields":[{"name":"start_sec","type":"u64"},{"name":"end_sec","type":"u64"},{"name":"reward_per_sec","type":"u64"}]},{"name":"Farming","is_native":false,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"pool_info","type":"vector<0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::PoolInfo>"},{"name":"thl_epoch","type":"0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::EpochInfo"},{"name":"total_thl_alloc_point","type":"u64"}]},{"name":"FarmingEvents","is_native":false,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"reward_epoch_events","type":"0x1::event::EventHandle<0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RewardEpochEvent>"},{"name":"stake_events","type":"0x1::event::EventHandle<0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::StakeEvent>"},{"name":"unstake_events","type":"0x1::event::EventHandle<0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::UnstakeEvent>"},{"name":"claim_events","type":"0x1::event::EventHandle<0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::ClaimEvent>"},{"name":"pool_change_events","type":"0x1::event::EventHandle<0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::PoolChangeEvent>"}]},{"name":"FarmingV2","is_native":false,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"v2_only_mode","type":"bool"}]},{"name":"PauseFlag","is_native":false,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"paused","type":"bool"}]},{"name":"PoolChangeEvent","is_native":false,"is_event":false,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"pid","type":"u64"},{"name":"stake_coin","type":"0x1::string::String"},{"name":"prev_thl_alloc_point","type":"u64"},{"name":"new_thl_alloc_point","type":"u64"}]},{"name":"PoolInfo","is_native":false,"is_event":false,"abilities":["store"],"generic_type_params":[],"fields":[{"name":"stake_coin","type":"0x1::string::String"},{"name":"stake_amount","type":"u64"},{"name":"thl_alloc_point","type":"u64"},{"name":"last_rewards_sec","type":"0x1::table::Table<0x1::string::String, u64>"},{"name":"acc_rewards_per_share","type":"0x1::table::Table<0x1::string::String, u256>"},{"name":"extra_rewards","type":"0x1::table::Table<0x1::string::String, 0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::EpochInfo>"},{"name":"extra_reward_coins","type":"vector<0x1::string::String>"}]},{"name":"RateLimit","is_native":false,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"window_duration_seconds","type":"u64"},{"name":"coin_rate_limiters","type":"0x1::simple_map::SimpleMap<0x1::string::String, 0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac::rate_limiter::RateLimiter>"}]},{"name":"RateLimitMaxQtyUpdateEvent","is_native":false,"is_event":true,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"coin_type","type":"0x1::string::String"},{"name":"window_max_qty","type":"u128"}]},{"name":"RateLimitWindowDurationUpdateEvent","is_native":false,"is_event":true,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"window_duration_seconds","type":"u64"}]},{"name":"RewardEpochEvent","is_native":false,"is_event":false,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"reward_coin","type":"0x1::string::String"},{"name":"start_sec","type":"u64"},{"name":"end_sec","type":"u64"},{"name":"reward_per_sec","type":"u64"}]},{"name":"StakeEvent","is_native":false,"is_event":false,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"pid","type":"u64"},{"name":"stake_coin","type":"0x1::string::String"},{"name":"amount","type":"u64"}]},{"name":"StakeEventV2","is_native":false,"is_event":true,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"pid","type":"u64"},{"name":"stake_coin","type":"0x1::string::String"},{"name":"amount","type":"u64"},{"name":"boosted_amount","type":"u64"},{"name":"boost_factor","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"}]},{"name":"Staker","is_native":false,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"pool_info","type":"0x1::table::Table<u64, 0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::UserPoolInfo>"}]},{"name":"UnstakeEvent","is_native":false,"is_event":false,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"pid","type":"u64"},{"name":"stake_coin","type":"0x1::string::String"},{"name":"amount","type":"u64"}]},{"name":"UnstakeEventV2","is_native":false,"is_event":true,"abilities":["drop","store"],"generic_type_params":[],"fields":[{"name":"pid","type":"u64"},{"name":"stake_coin","type":"0x1::string::String"},{"name":"amount","type":"u64"},{"name":"boosted_amount","type":"u64"},{"name":"boost_factor","type":"0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9::fixed_point64::FixedPoint64"}]},{"name":"UserPoolInfo","is_native":false,"is_event":false,"abilities":["store"],"generic_type_params":[],"fields":[{"name":"amount","type":"u64"},{"name":"last_acc_rewards_per_share","type":"0x1::table::Table<0x1::string::String, u256>"},{"name":"rewards","type":"0x1::table::Table<0x1::string::String, u64>"}]},{"name":"VeTHLGatedFarming","is_native":false,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"threshold_bps","type":"u64"},{"name":"exempt_pools","type":"vector<u64>"}]}]}},{"bytecode":"0xa11ceb0b0700000a0c01000c020c0803144e0562260788018f030897046006f7047d10f405af010aa307060ca907b0010dd908020fdb08020001010201030104010502060007080001100600000800010001000902000001000a00030001000b04000001000c00010001000d00010001000e0005000101110601000104120201000103130809000105140203000102150400000101160a05000100010501060c010103060c0a020a0a02010c0206050a020205080102060c0501080101060801076661726d696e67077061636b616765076163636f756e7404636f6465107265736f757263655f6163636f756e74067369676e6572076d616e61676572185265736f757263655369676e65724361706162696c69747920646572697665645f7265736f757263655f6163636f756e745f616464726573730b696e69745f6d6f64756c650b696e697469616c697a65640f7075626c6973685f7061636b616765187265736f757263655f6163636f756e745f61646472657373217265736f757263655f6163636f756e745f6465706c6f7965725f61646472657373177265736f757263655f6163636f756e745f7369676e65720a7369676e65725f636170105369676e65724361706162696c697479176372656174655f7265736f757263655f616464726573730a616464726573735f6f661d72657472696576655f7265736f757263655f6163636f756e745f6361700d69735f617574686f72697a6564137075626c6973685f7061636b6167655f74786e1d6372656174655f7369676e65725f776974685f6361706162696c6974796b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99000000000000000000000000000000000000000000000000000000000000000193aa044a65a27bd89b163f8b3be3777b160b09a25c336643dcc2878dfd8f2a8d05201bf23f0881f8fa149500ff6b7a047f608967c028a8ad7a2100caa84833ce851d0308030000000000000003080100000000000000030800000000000000000308020000000000000005206b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa990a020e0d7468616c615f6661726d696e67126170746f733a3a6d657461646174615f76319a01040000000000000000184552525f5041434b4147455f554e415554484f52495a45440b4572726f7220436f6465730100000000000000174552525f5041434b4147455f494e495449414c495a4544000200000000000000194552525f5041434b4147455f554e494e495449414c495a45440003000000000000001c4552525f5041434b4147455f414444524553535f4d49534d415443480000000002010f080100000000010607000c000e0007061107020100000007270a0011080c010a012900200408050c0b00010702270a01110021041105150b00010701270b01110421041a051e0b00010701270a00070011090c020b000b0212002d000202010000000311042900020301040100050d0b00110a0404050607032711060c030e030b010b02110b020401000000020705020501000000020700020603000100000a11020403050507042711042b001000110c020000000000","abi":{"address":"0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99","name":"package","friends":["0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming"],"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":"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,"is_event":false,"abilities":["key"],"generic_type_params":[],"fields":[{"name":"signer_cap","type":"0x1::account::SignerCapability"}]}]}},{"bytecode":"0xa11ceb0b0700000a0901000e020e120320770497012605bd017507b202f00108a204600a8205050c8705dc01000001010102010301040205000600070000010f040100010510000003150700000800010300000001000902010001000a0103010001000b0401010001000c0201010001000d04010100010611000701000102120209000101130a010100010614000d020000010609020700010416011001000101170013010001060b14070100010118090301000101190201010001060d0412010001060604080808020b090c040b080b020e090f040e080e0b060b110c060d060e060f061006080602060c030001060c010103060c0303030b010109010b010109020b01010802010900010b01010802010802010502050b010109000109010209000901010b010109010109020209000902010803010800020b010109000b01010802010b0101090003060c030b01010900020b010108020b01010900077363726970747304636f696e067369676e657206737472696e6709747970655f696e666f0874686c5f636f696e076661726d696e67044e756c6c05636c61696d0d636c61696d5f616c6c5f74686c0769735f6e756c6c057374616b650c7472795f726567697374657207756e7374616b650b64756d6d795f6669656c6404436f696e0354484c09636c61696d5f74686c0a616464726573735f6f66076465706f73697412636c61696d5f65787472615f72657761726406537472696e6709747970655f6e616d650877697468647261771569735f6163636f756e745f726567697374657265640872656769737465726b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99000000000000000000000000000000000000000000000000000000000000000107fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b1272556436150002010e010001040005280a000a0138000c040a0038010a0011070b04380238032004170a000a0138040c020a0038050a0011070b02380638072004250a000b0138080c030a0038090b0011070b03380a05270b00010201010400070a0a00110a0c010a0038010b0011070b01380202020000000104380b380c21020301040012100a000b02380d0c030a000b010b03380e0c040a0038010b0011070b0438020204000000010b0a001107380f2004080b003810050a0b0001020501040015110a000b010b0238110c030c040a0011070b0438120a0038010b0011070b0338020200","abi":{"address":"0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99","name":"scripts","friends":[],"exposed_functions":[{"name":"claim","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]},{"constraints":[]},{"constraints":[]}],"params":["&signer","u64"],"return":[]},{"name":"claim_all_thl","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[],"params":["&signer"],"return":[]},{"name":"stake","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u64","u64"],"return":[]},{"name":"unstake","visibility":"public","is_entry":true,"is_view":false,"generic_type_params":[{"constraints":[]}],"params":["&signer","u64","u64"],"return":[]}],"structs":[{"name":"Null","is_native":false,"is_event":false,"abilities":[],"generic_type_params":[],"fields":[{"name":"dummy_field","type":"bool"}]}]}}]',
1631
+ );
1632
+
1633
+ export function loadAllTypes(coder: MoveCoder) {
1634
+ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.loadAllTypes(
1635
+ coder,
1636
+ );
1637
+ _0x1.loadAllTypes(coder);
1638
+ _0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.loadAllTypes(
1639
+ coder,
1640
+ );
1641
+ _0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615.loadAllTypes(
1642
+ coder,
1643
+ );
1644
+ for (const m of Object.values(MODULES)) {
1645
+ coder.load(
1646
+ m as any,
1647
+ "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99",
1648
+ );
1649
+ }
1650
+ }
1651
+
1652
+ loadAllTypes(defaultMoveCoder());