/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ /* Generated types for 0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99, original address 0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99 */ import { TypeDescriptor, ANY_TYPE } from "@typemove/move"; import { MoveCoder, TypedEventInstance } from "@typemove/aptos"; import { defaultMoveCoder } from "@typemove/aptos"; import { Aptos, Account as AptosAccount, MoveAddressType, PendingTransactionResponse, InputGenerateTransactionOptions, MoveStructId, InputViewFunctionData, InputViewFunctionJsonData, } from "@aptos-labs/ts-sdk"; import * as _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9 from "./0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.js"; import * as _0x1 from "@typemove/aptos/builtin/0x1"; import * as _0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac from "./0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.js"; import * as _0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615 from "./0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615.js"; export namespace farming { export interface BoostMultiplierChangeEvent { user_addr: MoveAddressType; prev_boost_factor: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64; curr_boost_factor: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64; } export namespace BoostMultiplierChangeEvent { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::BoostMultiplierChangeEvent"; const TYPE = new TypeDescriptor( BoostMultiplierChangeEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type BoostMultiplierChangeEventInstance = TypedEventInstance & { data_decoded: BoostMultiplierChangeEvent; type_arguments: []; }; export interface BoostedFarming { boost_multipliers: _0x1.smart_table.SmartTable< MoveAddressType, _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64 >; boost_scaling_factor_bps: bigint; max_boost_multiplier_bps: bigint; } export namespace BoostedFarming { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::BoostedFarming"; const TYPE = new TypeDescriptor(BoostedFarming.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface ClaimEvent { stake_coin: string; reward_coin: string; amount: bigint; } export namespace ClaimEvent { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::ClaimEvent"; const TYPE = new TypeDescriptor(ClaimEvent.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export type ClaimEventInstance = TypedEventInstance & { data_decoded: ClaimEvent; type_arguments: []; }; export interface EpochInfo { start_sec: bigint; end_sec: bigint; reward_per_sec: bigint; } export namespace EpochInfo { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::EpochInfo"; const TYPE = new TypeDescriptor(EpochInfo.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface Farming { pool_info: farming.PoolInfo[]; thl_epoch: farming.EpochInfo; total_thl_alloc_point: bigint; } export namespace Farming { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::Farming"; const TYPE = new TypeDescriptor(Farming.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface FarmingEvents { reward_epoch_events: _0x1.event.EventHandle; stake_events: _0x1.event.EventHandle; unstake_events: _0x1.event.EventHandle; claim_events: _0x1.event.EventHandle; pool_change_events: _0x1.event.EventHandle; } export namespace FarmingEvents { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::FarmingEvents"; const TYPE = new TypeDescriptor(FarmingEvents.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface FarmingV2 { v2_only_mode: boolean; } export namespace FarmingV2 { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::FarmingV2"; const TYPE = new TypeDescriptor(FarmingV2.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface PauseFlag { paused: boolean; } export namespace PauseFlag { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::PauseFlag"; const TYPE = new TypeDescriptor(PauseFlag.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface PoolChangeEvent { pid: bigint; stake_coin: string; prev_thl_alloc_point: bigint; new_thl_alloc_point: bigint; } export namespace PoolChangeEvent { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::PoolChangeEvent"; const TYPE = new TypeDescriptor( PoolChangeEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type PoolChangeEventInstance = TypedEventInstance & { data_decoded: PoolChangeEvent; type_arguments: []; }; export interface PoolInfo { stake_coin: string; stake_amount: bigint; thl_alloc_point: bigint; last_rewards_sec: _0x1.table.Table; acc_rewards_per_share: _0x1.table.Table; extra_rewards: _0x1.table.Table; extra_reward_coins: string[]; } export namespace PoolInfo { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::PoolInfo"; const TYPE = new TypeDescriptor(PoolInfo.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface RateLimit { window_duration_seconds: bigint; coin_rate_limiters: _0x1.simple_map.SimpleMap< string, _0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.rate_limiter.RateLimiter >; } export namespace RateLimit { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RateLimit"; const TYPE = new TypeDescriptor(RateLimit.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface RateLimitMaxQtyUpdateEvent { coin_type: string; window_max_qty: bigint; } export namespace RateLimitMaxQtyUpdateEvent { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RateLimitMaxQtyUpdateEvent"; const TYPE = new TypeDescriptor( RateLimitMaxQtyUpdateEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type RateLimitMaxQtyUpdateEventInstance = TypedEventInstance & { data_decoded: RateLimitMaxQtyUpdateEvent; type_arguments: []; }; export interface RateLimitWindowDurationUpdateEvent { window_duration_seconds: bigint; } export namespace RateLimitWindowDurationUpdateEvent { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RateLimitWindowDurationUpdateEvent"; const TYPE = new TypeDescriptor( RateLimitWindowDurationUpdateEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type RateLimitWindowDurationUpdateEventInstance = TypedEventInstance & { data_decoded: RateLimitWindowDurationUpdateEvent; type_arguments: []; }; export interface RewardEpochEvent { reward_coin: string; start_sec: bigint; end_sec: bigint; reward_per_sec: bigint; } export namespace RewardEpochEvent { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::RewardEpochEvent"; const TYPE = new TypeDescriptor( RewardEpochEvent.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export type RewardEpochEventInstance = TypedEventInstance & { data_decoded: RewardEpochEvent; type_arguments: []; }; export interface StakeEvent { pid: bigint; stake_coin: string; amount: bigint; } export namespace StakeEvent { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::StakeEvent"; const TYPE = new TypeDescriptor(StakeEvent.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export type StakeEventInstance = TypedEventInstance & { data_decoded: StakeEvent; type_arguments: []; }; export interface StakeEventV2 { pid: bigint; stake_coin: string; amount: bigint; boosted_amount: bigint; boost_factor: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64; } export namespace StakeEventV2 { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::StakeEventV2"; const TYPE = new TypeDescriptor(StakeEventV2.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export type StakeEventV2Instance = TypedEventInstance & { data_decoded: StakeEventV2; type_arguments: []; }; export interface Staker { pool_info: _0x1.table.Table; } export namespace Staker { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::Staker"; const TYPE = new TypeDescriptor(Staker.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface UnstakeEvent { pid: bigint; stake_coin: string; amount: bigint; } export namespace UnstakeEvent { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::UnstakeEvent"; const TYPE = new TypeDescriptor(UnstakeEvent.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export type UnstakeEventInstance = TypedEventInstance & { data_decoded: UnstakeEvent; type_arguments: []; }; export interface UnstakeEventV2 { pid: bigint; stake_coin: string; amount: bigint; boosted_amount: bigint; boost_factor: _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64; } export namespace UnstakeEventV2 { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::UnstakeEventV2"; const TYPE = new TypeDescriptor(UnstakeEventV2.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export type UnstakeEventV2Instance = TypedEventInstance & { data_decoded: UnstakeEventV2; type_arguments: []; }; export interface UserPoolInfo { amount: bigint; last_acc_rewards_per_share: _0x1.table.Table; rewards: _0x1.table.Table; } export namespace UserPoolInfo { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::UserPoolInfo"; const TYPE = new TypeDescriptor(UserPoolInfo.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export interface VeTHLGatedFarming { threshold_bps: bigint; exempt_pools: bigint[]; } export namespace VeTHLGatedFarming { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::VeTHLGatedFarming"; const TYPE = new TypeDescriptor( VeTHLGatedFarming.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace entry { export async function addPool( client: Aptos, account: AptosAccount, request: { typeArguments: [MoveStructId]; functionArguments: [bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::add_pool", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: request.typeArguments, }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function enableRateLimitFeature( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: []; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::enable_rate_limit_feature", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function init( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: []; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::init", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function initPauseFlag( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: []; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::init_pause_flag", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function initializeBoostedFarming( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: []; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialize_boosted_farming", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function initializeFarmingV2( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: []; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialize_farming_v2", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function initializeVethlGatedFarming( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialize_vethl_gated_farming", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function newThlEpoch( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [bigint, bigint, bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::new_thl_epoch", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function setBoostScalingFactorBps( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_boost_scaling_factor_bps", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function setCoinRateLimit( client: Aptos, account: AptosAccount, request: { typeArguments: [MoveStructId]; functionArguments: [bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_coin_rate_limit", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: request.typeArguments, }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function setMaxBoostMultiplierBps( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_max_boost_multiplier_bps", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function setPause( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [boolean]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_pause", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function setRateLimitWindowDuration( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_rate_limit_window_duration", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function setV2OnlyMode( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [boolean]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_v2_only_mode", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function setVethlGatedFarmingExemptPools( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [bigint[]]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_vethl_gated_farming_exempt_pools", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function setVethlGatedFarmingThresholdBps( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::set_vethl_gated_farming_threshold_bps", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function updateExtraReward( client: Aptos, account: AptosAccount, request: { typeArguments: [MoveStructId]; functionArguments: [bigint, bigint, bigint, bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::update_extra_reward", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: request.typeArguments, }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function updateThlReward( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [bigint, bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::update_thl_reward", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } } export namespace view { export async function accountStakingValue( client: Aptos, request: { functionArguments: [MoveAddressType]; }, version?: bigint, ): Promise< [ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64, ] > { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_staking_value", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_staking_value", ); return (await coder.decodeArray(res, type.return)) as any; } export async function accountStakingValueGivenAdd( client: Aptos, request: { functionArguments: [MoveAddressType, bigint, bigint]; }, version?: bigint, ): Promise< [ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64, ] > { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_staking_value_given_add", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_staking_value_given_add", ); return (await coder.decodeArray(res, type.return)) as any; } export async function accountVeThlValue( client: Aptos, request: { functionArguments: [MoveAddressType]; }, version?: bigint, ): Promise< [ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64, ] > { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_veTHL_value", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::account_veTHL_value", ); return (await coder.decodeArray(res, type.return)) as any; } export async function boostMultiplier( client: Aptos, request: { functionArguments: [MoveAddressType]; }, version?: bigint, ): Promise< [ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64, ] > { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boost_multiplier", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boost_multiplier", ); return (await coder.decodeArray(res, type.return)) as any; } export async function boostMultiplierGivenAdd( client: Aptos, request: { functionArguments: [MoveAddressType, bigint]; }, version?: bigint, ): Promise< [ _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64, ] > { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boost_multiplier_given_add", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boost_multiplier_given_add", ); return (await coder.decodeArray(res, type.return)) as any; } export async function boostedFarmingParams( client: Aptos, version?: bigint, ): Promise<[bigint, bigint]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boosted_farming_params", functionArguments: [], typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::boosted_farming_params", ); return (await coder.decodeArray(res, type.return)) as any; } export async function coinRateLimiterView( client: Aptos, request: { typeArguments: [MoveStructId]; }, version?: bigint, ): Promise< [ _0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.rate_limiter.RateLimiter, ] > { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::coin_rate_limiter_view", functionArguments: [], typeArguments: request.typeArguments, }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::coin_rate_limiter_view", ); return (await coder.decodeArray(res, type.return)) as any; } export async function eligibleGivenAdd( client: Aptos, request: { functionArguments: [MoveAddressType, bigint, bigint]; }, version?: bigint, ): Promise<[boolean]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::eligible_given_add", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::eligible_given_add", ); return (await coder.decodeArray(res, type.return)) as any; } export async function enabledRateLimiterFeature( client: Aptos, version?: bigint, ): Promise<[boolean]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::enabled_rate_limiter_feature", functionArguments: [], typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::enabled_rate_limiter_feature", ); return (await coder.decodeArray(res, type.return)) as any; } export async function existsCoinRateLimiter( client: Aptos, request: { typeArguments: [MoveStructId]; }, version?: bigint, ): Promise<[boolean]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::exists_coin_rate_limiter", functionArguments: [], typeArguments: request.typeArguments, }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::exists_coin_rate_limiter", ); return (await coder.decodeArray(res, type.return)) as any; } export async function initializedVethlGatedFarming( client: Aptos, version?: bigint, ): Promise<[boolean]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialized_vethl_gated_farming", functionArguments: [], typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::initialized_vethl_gated_farming", ); return (await coder.decodeArray(res, type.return)) as any; } export async function isStakeCoin( client: Aptos, request: { functionArguments: [string]; }, version?: bigint, ): Promise<[boolean, bigint]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::is_stake_coin", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::is_stake_coin", ); return (await coder.decodeArray(res, type.return)) as any; } export async function maxEligibleStake( client: Aptos, request: { functionArguments: [MoveAddressType, bigint]; }, version?: bigint, ): Promise<[boolean, bigint]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::max_eligible_stake", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::max_eligible_stake", ); return (await coder.decodeArray(res, type.return)) as any; } export async function paused( client: Aptos, version?: bigint, ): Promise<[boolean]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::paused", functionArguments: [], typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::paused", ); return (await coder.decodeArray(res, type.return)) as any; } export async function poolAccExtraRewardPerShare( client: Aptos, request: { typeArguments: [MoveStructId]; functionArguments: [bigint]; }, version?: bigint, ): Promise<[bigint]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::pool_acc_extra_reward_per_share", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: request.typeArguments, }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::pool_acc_extra_reward_per_share", ); return (await coder.decodeArray(res, type.return)) as any; } export async function poolAccThlRewardPerShare( client: Aptos, request: { functionArguments: [bigint]; }, version?: bigint, ): Promise<[bigint]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::pool_acc_thl_reward_per_share", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::pool_acc_thl_reward_per_share", ); return (await coder.decodeArray(res, type.return)) as any; } export async function stakeAmount( client: Aptos, request: { functionArguments: [MoveAddressType, bigint]; }, version?: bigint, ): Promise< [ bigint, bigint, _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64, ] > { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::stake_amount", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::stake_amount", ); return (await coder.decodeArray(res, type.return)) as any; } export async function stakeAndRewardAmount( client: Aptos, request: { typeArguments: [MoveStructId]; functionArguments: [MoveAddressType, bigint]; }, version?: bigint, ): Promise<[bigint, bigint]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::stake_and_reward_amount", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: request.typeArguments, }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::stake_and_reward_amount", ); return (await coder.decodeArray(res, type.return)) as any; } export async function v2OnlyMode( client: Aptos, version?: bigint, ): Promise<[boolean]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::v2_only_mode", functionArguments: [], typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::v2_only_mode", ); return (await coder.decodeArray(res, type.return)) as any; } export async function veThlShortfallGivenAdd( client: Aptos, request: { functionArguments: [MoveAddressType, bigint, bigint]; }, version?: bigint, ): Promise< [ boolean, _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64, _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.fixed_point64.FixedPoint64, ] > { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::veTHL_shortfall_given_add", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::veTHL_shortfall_given_add", ); return (await coder.decodeArray(res, type.return)) as any; } export async function vethlGatedFarmingExemptPools( client: Aptos, version?: bigint, ): Promise<[bigint[]]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::vethl_gated_farming_exempt_pools", functionArguments: [], typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::vethl_gated_farming_exempt_pools", ); return (await coder.decodeArray(res, type.return)) as any; } export async function vethlGatedFarmingThresholdBps( client: Aptos, version?: bigint, ): Promise<[bigint]> { const coder = defaultMoveCoder(client.config); const data: InputViewFunctionData = { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::vethl_gated_farming_threshold_bps", functionArguments: [], typeArguments: [], }; const res = await client.view({ payload: data, options: { ledgerVersion: version }, }); const type = await coder.getMoveFunction( "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::farming::vethl_gated_farming_threshold_bps", ); return (await coder.decodeArray(res, type.return)) as any; } } } export namespace package$ { export interface ResourceSignerCapability { signer_cap: _0x1.account.SignerCapability; } export namespace ResourceSignerCapability { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::package::ResourceSignerCapability"; const TYPE = new TypeDescriptor( ResourceSignerCapability.TYPE_QNAME, ); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace entry { export async function publishPackage( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: [string, string[]]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::package::publish_package", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } } export namespace view {} } export namespace scripts { export interface Null { dummy_field: boolean; } export namespace Null { export const TYPE_QNAME = "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::Null"; const TYPE = new TypeDescriptor(Null.TYPE_QNAME); export function type(): TypeDescriptor { return TYPE.apply(); } } export namespace entry { export async function claim( client: Aptos, account: AptosAccount, request: { typeArguments: [MoveStructId, MoveStructId, MoveStructId]; functionArguments: [bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::claim", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: request.typeArguments, }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function claimAllThl( client: Aptos, account: AptosAccount, request: { typeArguments: []; functionArguments: []; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::claim_all_thl", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: [], }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function stake( client: Aptos, account: AptosAccount, request: { typeArguments: [MoveStructId]; functionArguments: [bigint, bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::stake", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: request.typeArguments, }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } export async function unstake( client: Aptos, account: AptosAccount, request: { typeArguments: [MoveStructId]; functionArguments: [bigint, bigint]; }, options?: InputGenerateTransactionOptions, ): Promise { const coder = defaultMoveCoder(client.config); const transaction = await client.transaction.build.simple({ sender: account.accountAddress, data: { function: "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99::scripts::unstake", functionArguments: coder.encodeArray(request.functionArguments), typeArguments: request.typeArguments, }, options, }); return await client.signAndSubmitTransaction({ signer: account, transaction, }); } } export namespace view {} } const MODULES = JSON.parse( '[{"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"]},{"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"],"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"],"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","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"]},{"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"},{"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"}]},{"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"}]}]}},{"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","vector>"],"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"}]}]}}]', ); export function loadAllTypes(coder: MoveCoder) { _0x4dcae85fc5559071906cd5c76b7420fcbb4b0a92f00ab40ffc394aadbbff5ee9.loadAllTypes( coder, ); _0x1.loadAllTypes(coder); _0x87978b35bf1eb73ae6cf04cfedcaa1f48254a683ebd00a21e7516a991edae3ac.loadAllTypes( coder, ); _0x7fd500c11216f0fe3095d0c4b8aa4d64a4e2e04f83758462f2b127255643615.loadAllTypes( coder, ); for (const m of Object.values(MODULES)) { coder.load( m as any, "0x6b3720cd988adeaf721ed9d4730da4324d52364871a68eac62b46d21e4d2fa99", ); } } loadAllTypes(defaultMoveCoder());