@magma-finance/magma-clmm::pool bytecode | tide- Move path
- 0x4a35…f82d::pool
- Functions
- 11295 public, 0 entry
- Structs
- 22
pool
The on-chain disassembly. Offsets are bytecode positions within each function.
1// Move bytecode v7
2module 4a35d3dfef55ed3631b7158544c6322a23bc434fe4fca1234cb680ce0505f82d.pool {
3use 659c0e9c4c8a416f040fa758d4fc4073a5fdd1fed97edadcd5cba5180fb36246::full_math_u128;
4use 659c0e9c4c8a416f040fa758d4fc4073a5fdd1fed97edadcd5cba5180fb36246::full_math_u64;
5use 659c0e9c4c8a416f040fa758d4fc4073a5fdd1fed97edadcd5cba5180fb36246::i128;
6use 659c0e9c4c8a416f040fa758d4fc4073a5fdd1fed97edadcd5cba5180fb36246::i32;
7use 659c0e9c4c8a416f040fa758d4fc4073a5fdd1fed97edadcd5cba5180fb36246::math_u128;
8use 659c0e9c4c8a416f040fa758d4fc4073a5fdd1fed97edadcd5cba5180fb36246::math_u64;
9use 2de81c0f5cc2aa176da9f093834efbf846d581afa46516bf4952b6efd3a44992::gauge_cap;
10use 4a35d3dfef55ed3631b7158544c6322a23bc434fe4fca1234cb680ce0505f82d::clmm_math;
11use 4a35d3dfef55ed3631b7158544c6322a23bc434fe4fca1234cb680ce0505f82d::config;
12use 4a35d3dfef55ed3631b7158544c6322a23bc434fe4fca1234cb680ce0505f82d::partner;
13use 4a35d3dfef55ed3631b7158544c6322a23bc434fe4fca1234cb680ce0505f82d::position;
14use 4a35d3dfef55ed3631b7158544c6322a23bc434fe4fca1234cb680ce0505f82d::rewarder;
15use 4a35d3dfef55ed3631b7158544c6322a23bc434fe4fca1234cb680ce0505f82d::tick;
16use 4a35d3dfef55ed3631b7158544c6322a23bc434fe4fca1234cb680ce0505f82d::tick_math;
17use 682eaba7450909645bf949db3fc5881432a00b49b4c06d6974ecc4ee684e7992::option_u64;
18use 0000000000000000000000000000000000000000000000000000000000000001::ascii;
19use 0000000000000000000000000000000000000000000000000000000000000001::option;
20use 0000000000000000000000000000000000000000000000000000000000000001::string;
21use 0000000000000000000000000000000000000000000000000000000000000001::type_name;
22use 0000000000000000000000000000000000000000000000000000000000000002::balance;
23use 0000000000000000000000000000000000000000000000000000000000000002::clock;
24use 0000000000000000000000000000000000000000000000000000000000000002::display;
25use 0000000000000000000000000000000000000000000000000000000000000002::event;
26use 0000000000000000000000000000000000000000000000000000000000000002::object;
27use 0000000000000000000000000000000000000000000000000000000000000002::package;
28use 0000000000000000000000000000000000000000000000000000000000000002::transfer;
29use 0000000000000000000000000000000000000000000000000000000000000002::tx_context;
35struct Pool<phantom Ty0, phantom Ty1> has store, key {
42 current_sqrt_price: u128,
43 current_tick_index: I32,
44 fee_growth_global_a: u128,
45 fee_growth_global_b: u128,
46 fee_protocol_coin_a: u64,
47 fee_protocol_coin_b: u64,
48 tick_manager: TickManager,
49 rewarder_manager: RewarderManager,
50 position_manager: PositionManager,
54 unstaked_liquidity_fee_rate: u64,
55 magma_distribution_gauger_id: Option<ID>,
56 magma_distribution_growth_global: u128,
57 magma_distribution_rate: u128,
58 magma_distribution_reserve: u64,
59 magma_distribution_period_finish: u64,
60 magma_distribution_rollover: u64,
61 magma_distribution_last_updated: u64,
62 magma_distribution_staked_liquidity: u128,
63 magma_distribution_gauger_fee: PoolFee
66struct PoolFee has drop, store {
71struct SwapResult has copy, drop {
75 protocol_fee_amount: u64,
77 gauge_fee_amount: u64,
81struct FlashSwapReceipt<phantom Ty0, phantom Ty1> {
87 protocol_fee_amount: u64,
92struct AddLiquidityReceipt<phantom Ty0, phantom Ty1> {
98struct CalculatedSwapResult has copy, drop, store {
104 gauge_fee_amount: u64,
105 protocol_fee_amount: u64,
106 after_sqrt_price: u128,
108 step_results: vector<SwapStepResult>
111struct SwapStepResult has copy, drop, store {
112 current_sqrt_price: u128,
113 target_sqrt_price: u128,
114 current_liquidity: u128,
118 remainder_amount: u64
121struct OpenPositionEvent has copy, drop, store {
128struct ClosePositionEvent has copy, drop, store {
133struct AddLiquidityEvent has copy, drop, store {
139 after_liquidity: u128,
144struct RemoveLiquidityEvent has copy, drop, store {
150 after_liquidity: u128,
155struct SwapEvent has copy, drop, store {
161 magma_fee_amount: u64,
162 protocol_fee_amount: u64,
167 before_sqrt_price: u128,
168 after_sqrt_price: u128,
172struct CollectProtocolFeeEvent has copy, drop, store {
178struct CollectFeeEvent has copy, drop, store {
185struct UpdateFeeRateEvent has copy, drop, store {
191struct UpdateEmissionEvent has copy, drop, store {
193 rewarder_type: TypeName,
194 emissions_per_second: u128
197struct AddRewarderEvent has copy, drop, store {
199 rewarder_type: TypeName
202struct CollectRewardEvent has copy, drop, store {
208struct CollectRewardTypeEvent has copy, drop, store {
212 reward_type: TypeName
215struct CollectGaugeFeeEvent has copy, drop, store {
221struct UpdateUnstakedLiquidityFeeRateEvent has copy, drop, store {
227public magma_distribution_gauger_fee<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): PoolFee {
2290CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
2301ImmBorrowFieldGeneric[0](Pool.magma_distribution_gauger_fee: PoolFee)
2312ImmBorrowField[1](PoolFee.coin_a: u64)
2334MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
2345ImmBorrowFieldGeneric[0](Pool.magma_distribution_gauger_fee: PoolFee)
2356ImmBorrowField[2](PoolFee.coin_b: u64)
241public pool_fee_a_b(Arg0: &PoolFee): u64 * u64 {
2430CopyLoc[0](Arg0: &PoolFee)
2441ImmBorrowField[1](PoolFee.coin_a: u64)
2463MoveLoc[0](Arg0: &PoolFee)
2474ImmBorrowField[2](PoolFee.coin_b: u64)
252public(friend) new<Ty0, Ty1>(Arg0: u32, Arg1: u128, Arg2: u64, Arg3: String, Arg4: u64, Arg5: &Clock, Arg6: &mut TxContext): Pool<Ty0, Ty1> {
2540CopyLoc[6](Arg6: &mut TxContext)
2551Call object::new(&mut TxContext): UID
2562Call balance::zero<Ty0>(): Balance<Ty0>
2573Call balance::zero<Ty1>(): Balance<Ty1>
2584CopyLoc[0](Arg0: u32)
2595MoveLoc[2](Arg2: u64)
2617CopyLoc[1](Arg1: u128)
2628MoveLoc[1](Arg1: u128)
2639Call tick_math::get_tick_at_sqrt_price(u128): I32
26814CopyLoc[0](Arg0: u32)
26915CopyLoc[5](Arg5: &Clock)
27016Call clock::timestamp_ms(&Clock): u64
27117CopyLoc[6](Arg6: &mut TxContext)
27218Call tick::new(u32, u64, &mut TxContext): TickManager
27319Call rewarder::new(): RewarderManager
27420MoveLoc[0](Arg0: u32)
27521MoveLoc[6](Arg6: &mut TxContext)
27622Call position::new(u32, &mut TxContext): PositionManager
27824MoveLoc[4](Arg4: u64)
27925MoveLoc[3](Arg3: String)
28026Call config::default_unstaked_fee_rate(): u64
28127Call option::none<ID>(): Option<ID>
28733MoveLoc[5](Arg5: &Clock)
28834Call clock::timestamp_ms(&Clock): u64
29541PackGeneric[0](Pool<Ty0, Ty1>)
299public get_amount_by_liquidity(Arg0: I32, Arg1: I32, Arg2: I32, Arg3: u128, Arg4: u128, Arg5: bool): u64 * u64 {
3050CopyLoc[4](Arg4: u128)
3147CopyLoc[2](Arg2: I32)
3158CopyLoc[0](Arg0: I32)
3169Call i32::lt(I32, I32): bool
31911MoveLoc[0](Arg0: I32)
32012Call tick_math::get_sqrt_price_at_tick(I32): u128
32113MoveLoc[1](Arg1: I32)
32214Call tick_math::get_sqrt_price_at_tick(I32): u128
32315MoveLoc[4](Arg4: u128)
32416MoveLoc[5](Arg5: bool)
32517Call clmm_math::get_delta_a(u128, u128, u128, bool): u64
33122MoveLoc[2](Arg2: I32)
33223CopyLoc[1](Arg1: I32)
33324Call i32::lt(I32, I32): bool
33626CopyLoc[3](Arg3: u128)
33727MoveLoc[1](Arg1: I32)
33828Call tick_math::get_sqrt_price_at_tick(I32): u128
33929CopyLoc[4](Arg4: u128)
34030CopyLoc[5](Arg5: bool)
34131Call clmm_math::get_delta_a(u128, u128, u128, bool): u64
34232MoveLoc[0](Arg0: I32)
34333Call tick_math::get_sqrt_price_at_tick(I32): u128
34434MoveLoc[3](Arg3: u128)
34535MoveLoc[4](Arg4: u128)
34636MoveLoc[5](Arg5: bool)
34737Call clmm_math::get_delta_b(u128, u128, u128, bool): u64
35342MoveLoc[0](Arg0: I32)
35443Call tick_math::get_sqrt_price_at_tick(I32): u128
35544MoveLoc[1](Arg1: I32)
35645Call tick_math::get_sqrt_price_at_tick(I32): u128
35746MoveLoc[4](Arg4: u128)
35847MoveLoc[5](Arg5: bool)
35948Call clmm_math::get_delta_b(u128, u128, u128, bool): u64
36351MoveLoc[6](loc0: u64)
36452MoveLoc[7](loc1: u64)
36855MoveLoc[8](loc2: u64)
36956MoveLoc[9](loc3: u64)
373public borrow_position_info<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: ID): &PositionInfo {
3750MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
3761ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
3783Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
382public close_position<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: Position) {
3850MoveLoc[0](Arg0: &GlobalConfig)
3861Call config::checked_package_version(&GlobalConfig)
3872CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3883ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
3958MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
39710LdConst[13](u64: 13)
40012ImmBorrowLoc[2](Arg2: Position)
40113Call object::id<Position>(&Position): ID
40315CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
40416MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
40517MoveLoc[2](Arg2: Position)
40618Call position::close_position(&mut PositionManager, Position)
40719MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
40921Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
41022MoveLoc[3](loc0: ID)
41123Pack[9](ClosePositionEvent)
41224Call event::emit<ClosePositionEvent>(ClosePositionEvent)
416public fetch_positions<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: vector<ID>, Arg2: u64): vector<PositionInfo> {
4180MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
4191ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
4202MoveLoc[1](Arg1: vector<ID>)
4213MoveLoc[2](Arg2: u64)
4224Call position::fetch_positions(&PositionManager, vector<ID>, u64): vector<PositionInfo>
426public is_position_exist<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: ID): bool {
4280MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
4291ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
4313Call position::is_position_exist(&PositionManager, ID): bool
435public liquidity<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u128 {
4370MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
4381ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
443public open_position<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: u32, Arg3: u32, Arg4: &mut TxContext): Position {
4490MoveLoc[0](Arg0: &GlobalConfig)
4501Call config::checked_package_version(&GlobalConfig)
4512CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
4523ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
4598MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
46110MoveLoc[4](Arg4: &mut TxContext)
46312LdConst[13](u64: 13)
46614MoveLoc[2](Arg2: u32)
46715Call i32::from_u32(u32): I32
46917MoveLoc[3](Arg3: u32)
47018Call i32::from_u32(u32): I32
47220CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
47422Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
47624CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
47725MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
47826CopyLoc[5](loc0: ID)
47927CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
48028ImmBorrowFieldGeneric[4](Pool.index: u64)
48230MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
48331ImmBorrowFieldGeneric[5](Pool.url: String)
48533CopyLoc[7](loc2: I32)
48634CopyLoc[8](loc3: I32)
48735MoveLoc[4](Arg4: &mut TxContext)
48836Call position::open_position<Ty0, Ty1>(&mut PositionManager, ID, u64, String, I32, I32, &mut TxContext): Position
48937StLoc[6](loc1: Position)
49038MoveLoc[5](loc0: ID)
49139MoveLoc[7](loc2: I32)
49240MoveLoc[8](loc3: I32)
49341ImmBorrowLoc[6](loc1: Position)
49442Call object::id<Position>(&Position): ID
49543Pack[8](OpenPositionEvent)
49644Call event::emit<OpenPositionEvent>(OpenPositionEvent)
49745MoveLoc[6](loc1: Position)
501public update_emission<Ty0, Ty1, Ty2>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &RewarderGlobalVault, Arg3: u128, Arg4: &Clock, Arg5: &mut TxContext) {
5030CopyLoc[0](Arg0: &GlobalConfig)
5041Call config::checked_package_version(&GlobalConfig)
5052CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
5063ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
5138MoveLoc[2](Arg2: &RewarderGlobalVault)
51510MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
51712MoveLoc[5](Arg5: &mut TxContext)
51914MoveLoc[4](Arg4: &Clock)
52116MoveLoc[0](Arg0: &GlobalConfig)
52318LdConst[13](u64: 13)
52620MoveLoc[0](Arg0: &GlobalConfig)
52721MoveLoc[5](Arg5: &mut TxContext)
52923Call tx_context::sender(&TxContext): address
53024Call config::check_rewarder_manager_role(&GlobalConfig, address)
53125MoveLoc[2](Arg2: &RewarderGlobalVault)
53226CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
53327MutBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
53428CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
53529ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
53731CopyLoc[3](Arg3: u128)
53832MoveLoc[4](Arg4: &Clock)
53933Call clock::timestamp_ms(&Clock): u64
54236Call rewarder::update_emission<Ty2>(&RewarderGlobalVault, &mut RewarderManager, u128, u128, u64)
54337MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
54539Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
54640Call type_name::get<Ty2>(): TypeName
54741MoveLoc[3](Arg3: u128)
54842Pack[16](UpdateEmissionEvent)
54943Call event::emit<UpdateEmissionEvent>(UpdateEmissionEvent)
553public borrow_tick<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: I32): &Tick {
5550MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
5561ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
5572MoveLoc[1](Arg1: I32)
5583Call tick::borrow_tick(&TickManager, I32): &Tick
562public fetch_ticks<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: vector<u32>, Arg2: u64): vector<Tick> {
5640MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
5651ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
5662MoveLoc[1](Arg1: vector<u32>)
5673MoveLoc[2](Arg2: u64)
5684Call tick::fetch_ticks(&TickManager, vector<u32>, u64): vector<Tick>
572public index<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u64 {
5740MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
5751ImmBorrowFieldGeneric[4](Pool.index: u64)
580public add_liquidity<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut Position, Arg3: u128, Arg4: &Clock, Arg5: &mut TxContext): AddLiquidityReceipt<Ty0, Ty1> {
5820MoveLoc[0](Arg0: &GlobalConfig)
5831Call config::checked_package_version(&GlobalConfig)
5842CopyLoc[3](Arg3: u128)
5917MoveLoc[2](Arg2: &mut Position)
5939MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
59511MoveLoc[4](Arg4: &Clock)
60015MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
60116MoveLoc[2](Arg2: &mut Position)
60318MoveLoc[3](Arg3: u128)
60621MoveLoc[4](Arg4: &Clock)
60722Call clock::timestamp_ms(&Clock): u64
61025Call add_liquidity_internal<Ty0, Ty1>(&mut Pool<Ty0, Ty1>, &mut Position, bool, u128, u64, bool, u64): AddLiquidityReceipt<Ty0, Ty1>
614public add_liquidity_fix_coin<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut Position, Arg3: u64, Arg4: bool, Arg5: &Clock, Arg6: &mut TxContext): AddLiquidityReceipt<Ty0, Ty1> {
6160MoveLoc[0](Arg0: &GlobalConfig)
6171Call config::checked_package_version(&GlobalConfig)
6182CopyLoc[3](Arg3: u64)
6257MoveLoc[2](Arg2: &mut Position)
6279MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
62911MoveLoc[5](Arg5: &Clock)
63415MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
63516MoveLoc[2](Arg2: &mut Position)
63819MoveLoc[3](Arg3: u64)
63920MoveLoc[4](Arg4: bool)
64021MoveLoc[5](Arg5: &Clock)
64122Call clock::timestamp_ms(&Clock): u64
64425Call add_liquidity_internal<Ty0, Ty1>(&mut Pool<Ty0, Ty1>, &mut Position, bool, u128, u64, bool, u64): AddLiquidityReceipt<Ty0, Ty1>
648validate_pool_position<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: &Position) {
6500MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
6511Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
6522MoveLoc[1](Arg1: &Position)
6533Call position::pool_id(&Position): ID
6597LdU64(13906835978229645311)
665add_liquidity_internal<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &mut Position, Arg2: bool, Arg3: u128, Arg4: u64, Arg5: bool, Arg6: u64): AddLiquidityReceipt<Ty0, Ty1> {
680L21: loc14: vector<u128>
6840CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
6851ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
6926MoveLoc[1](Arg1: &mut Position)
6948MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
69610LdConst[13](u64: 13)
69912CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
70114CopyLoc[1](Arg1: &mut Position)
70316Call validate_pool_position<Ty0, Ty1>(&Pool<Ty0, Ty1>, &Position)
70417CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
70518MutBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
70619CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
70720ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
70922MoveLoc[6](Arg6: u64)
71023Call rewarder::settle(&mut RewarderManager, u128, u64)
71124CopyLoc[1](Arg1: &mut Position)
71326Call position::tick_range(&Position): I32 * I32
71427StLoc[23](loc16: I32)
71528StLoc[22](loc15: I32)
71629MoveLoc[2](Arg2: bool)
71931CopyLoc[22](loc15: I32)
72032CopyLoc[23](loc16: I32)
72133CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
72234ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
72436CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
72537ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
72739MoveLoc[4](Arg4: u64)
72840MoveLoc[5](Arg5: bool)
72941Call clmm_math::get_liquidity_by_amount(I32, I32, I32, u128, u64, bool): u128 * u64 * u64
73244StLoc[7](loc0: u128)
73546CopyLoc[22](loc15: I32)
73647CopyLoc[23](loc16: I32)
73748CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
73849ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
74051CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
74152ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
74354CopyLoc[3](Arg3: u128)
74556Call clmm_math::get_amount_by_liquidity(I32, I32, I32, u128, u128, bool): u64 * u64
74657StLoc[14](loc7: u64)
74758StLoc[12](loc5: u64)
74859CopyLoc[3](Arg3: u128)
74960MoveLoc[12](loc5: u64)
75061MoveLoc[14](loc7: u64)
75364StLoc[7](loc0: u128)
75565MoveLoc[7](loc0: u128)
75666MoveLoc[8](loc1: u64)
75767MoveLoc[9](loc2: u64)
75868StLoc[13](loc6: u64)
75969StLoc[11](loc4: u64)
76070StLoc[18](loc11: u128)
76171CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
76373CopyLoc[22](loc15: I32)
76474CopyLoc[23](loc16: I32)
76575Call get_all_growths_in_tick_range<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32, I32): u128 * u128 * vector<u128> * u128 * u128
76676StLoc[19](loc12: u128)
76777StLoc[20](loc13: u128)
76878StLoc[21](loc14: vector<u128>)
76979StLoc[16](loc9: u128)
77080StLoc[15](loc8: u128)
77181CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
77282MutBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
77383CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
77484ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
77686CopyLoc[22](loc15: I32)
77787CopyLoc[23](loc16: I32)
77888CopyLoc[18](loc11: u128)
77989CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
78090ImmBorrowFieldGeneric[10](Pool.fee_growth_global_a: u128)
78292CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
78393ImmBorrowFieldGeneric[11](Pool.fee_growth_global_b: u128)
78595CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
78696ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
78797Call rewarder::points_growth_global(&RewarderManager): u128
78898CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
78999ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
790100Call rewarder::rewards_growth_global(&RewarderManager): vector<u128>
791101CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
792102ImmBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
794104Call tick::increase_liquidity(&mut TickManager, I32, I32, I32, u128, u128, u128, u128, vector<u128>, u128)
795105CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
796106ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
798108CopyLoc[22](loc15: I32)
799109Call i32::gte(I32, I32): bool
802111CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
803112ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
805114CopyLoc[23](loc16: I32)
806115Call i32::lt(I32, I32): bool
807116StLoc[10](loc3: bool)
811119StLoc[10](loc3: bool)
813120MoveLoc[10](loc3: bool)
816122CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
817123ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
819125CopyLoc[18](loc11: u128)
820126Call math_u128::add_check(u128, u128): bool
825129MoveLoc[1](Arg1: &mut Position)
827131MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
832135CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
833136ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
835138CopyLoc[18](loc11: u128)
837140CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
838141MutBorrowFieldGeneric[3](Pool.liquidity: u128)
841143CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
842144MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
843145CopyLoc[1](Arg1: &mut Position)
844146MoveLoc[18](loc11: u128)
845147MoveLoc[15](loc8: u128)
846148MoveLoc[16](loc9: u128)
847149MoveLoc[20](loc13: u128)
848150MoveLoc[21](loc14: vector<u128>)
849151MoveLoc[19](loc12: u128)
850152Call position::increase_liquidity(&mut PositionManager, &mut Position, u128, u128, u128, u128, vector<u128>, u128): u128
851153StLoc[17](loc10: u128)
852154CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
854156Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
855157MoveLoc[1](Arg1: &mut Position)
857159Call object::id<Position>(&Position): ID
858160MoveLoc[22](loc15: I32)
859161MoveLoc[23](loc16: I32)
860162MoveLoc[3](Arg3: u128)
861163MoveLoc[17](loc10: u128)
862164CopyLoc[11](loc4: u64)
863165CopyLoc[13](loc6: u64)
864166Pack[10](AddLiquidityEvent)
865167Call event::emit<AddLiquidityEvent>(AddLiquidityEvent)
866168MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
868170Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
869171MoveLoc[11](loc4: u64)
870172MoveLoc[13](loc6: u64)
871173PackGeneric[1](AddLiquidityReceipt<Ty0, Ty1>)
875public add_liquidity_pay_amount<Ty0, Ty1>(Arg0: &AddLiquidityReceipt<Ty0, Ty1>): u64 * u64 {
8770CopyLoc[0](Arg0: &AddLiquidityReceipt<Ty0, Ty1>)
8781ImmBorrowFieldGeneric[13](AddLiquidityReceipt.amount_a: u64)
8803MoveLoc[0](Arg0: &AddLiquidityReceipt<Ty0, Ty1>)
8814ImmBorrowFieldGeneric[14](AddLiquidityReceipt.amount_b: u64)
886public balances<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u64 * u64 {
8880CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
8891ImmBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
8902Call balance::value<Ty0>(&Balance<Ty0>): u64
8913MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
8924ImmBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
8935Call balance::value<Ty1>(&Balance<Ty1>): u64
897public calculate_and_update_fee<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: ID): u64 * u64 {
902L7: loc4: &PositionInfo
9060MoveLoc[0](Arg0: &GlobalConfig)
9071Call config::checked_package_version(&GlobalConfig)
9082CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
9093ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
9168MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
91810LdConst[13](u64: 13)
92112CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
92213ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
92314CopyLoc[2](Arg2: ID)
92415Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
92516StLoc[7](loc4: &PositionInfo)
92617CopyLoc[7](loc4: &PositionInfo)
92718Call position::info_liquidity(&PositionInfo): u128
93222MoveLoc[7](loc4: &PositionInfo)
93323Call position::info_tick_range(&PositionInfo): I32 * I32
93626CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
93828MoveLoc[8](loc5: I32)
93929MoveLoc[9](loc6: I32)
94030Call get_fee_in_tick_range<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32, I32): u128 * u128
94131StLoc[6](loc3: u128)
94232StLoc[5](loc2: u128)
94333MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
94434MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
94535MoveLoc[2](Arg2: ID)
94636MoveLoc[5](loc2: u128)
94737MoveLoc[6](loc3: u128)
94838Call position::update_fee(&mut PositionManager, ID, u128, u128): u64 * u64
95342MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
95544MoveLoc[7](loc4: &PositionInfo)
95645Call position::info_fee_owned(&PositionInfo): u64 * u64
96048MoveLoc[3](loc0: u64)
96149MoveLoc[4](loc1: u64)
965public calculate_and_update_points<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: ID, Arg3: &Clock): u128 {
968L6: loc2: &PositionInfo
9720MoveLoc[0](Arg0: &GlobalConfig)
9731Call config::checked_package_version(&GlobalConfig)
9742CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
9753ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
9828MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
98410MoveLoc[3](Arg3: &Clock)
98612LdConst[13](u64: 13)
98914CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
99015MutBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
99116CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
99217ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
99419MoveLoc[3](Arg3: &Clock)
99520Call clock::timestamp_ms(&Clock): u64
99823Call rewarder::settle(&mut RewarderManager, u128, u64)
99924CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
100025ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
100126CopyLoc[2](Arg2: ID)
100227Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
100328StLoc[6](loc2: &PositionInfo)
100429CopyLoc[6](loc2: &PositionInfo)
100530Call position::info_liquidity(&PositionInfo): u128
101034MoveLoc[6](loc2: &PositionInfo)
101135Call position::info_tick_range(&PositionInfo): I32 * I32
101236StLoc[8](loc4: I32)
101337StLoc[7](loc3: I32)
101438CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
101640MoveLoc[7](loc3: I32)
101741MoveLoc[8](loc4: I32)
101842Call get_points_in_tick_range<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32, I32): u128
101943StLoc[5](loc1: u128)
102044MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
102145MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
102246MoveLoc[2](Arg2: ID)
102347MoveLoc[5](loc1: u128)
102448Call position::update_points(&mut PositionManager, ID, u128): u128
102549StLoc[4](loc0: u128)
102851MoveLoc[6](loc2: &PositionInfo)
103053MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
103154ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
103255MoveLoc[2](Arg2: ID)
103356Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
103457Call position::info_points_owned(&PositionInfo): u128
103558StLoc[4](loc0: u128)
103759MoveLoc[4](loc0: u128)
1041public calculate_and_update_reward<Ty0, Ty1, Ty2>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: ID, Arg3: &Clock): u64 {
1042L4: loc0: Option<u64>
1043L5: loc1: vector<u64>
10450CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
10461ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
10472Call rewarder::rewarder_index<Ty2>(&RewarderManager): Option<u64>
10483StLoc[4](loc0: Option<u64>)
10494ImmBorrowLoc[4](loc0: Option<u64>)
10505Call option::is_some<u64>(&Option<u64>): bool
10558MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
105710MoveLoc[3](Arg3: &Clock)
105912MoveLoc[0](Arg0: &GlobalConfig)
106114LdConst[17](u64: 17)
106416MoveLoc[0](Arg0: &GlobalConfig)
106517MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
106618MoveLoc[2](Arg2: ID)
106719MoveLoc[3](Arg3: &Clock)
106820Call calculate_and_update_rewards<Ty0, Ty1>(&GlobalConfig, &mut Pool<Ty0, Ty1>, ID, &Clock): vector<u64>
106921StLoc[5](loc1: vector<u64>)
107022ImmBorrowLoc[5](loc1: vector<u64>)
107123MutBorrowLoc[4](loc0: Option<u64>)
107224Call option::extract<u64>(&mut Option<u64>): u64
1078public calculate_and_update_rewards<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: ID, Arg3: &Clock): vector<u64> {
1079L4: loc0: vector<u64>
1080L5: loc1: &PositionInfo
1081L6: loc2: vector<u128>
10850MoveLoc[0](Arg0: &GlobalConfig)
10861Call config::checked_package_version(&GlobalConfig)
10872CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
10883ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
10958MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
109710MoveLoc[3](Arg3: &Clock)
109912LdConst[13](u64: 13)
110214CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
110315MutBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
110416CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
110517ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
110719MoveLoc[3](Arg3: &Clock)
110820Call clock::timestamp_ms(&Clock): u64
111123Call rewarder::settle(&mut RewarderManager, u128, u64)
111224CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
111325ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
111426CopyLoc[2](Arg2: ID)
111527Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
111628StLoc[5](loc1: &PositionInfo)
111729CopyLoc[5](loc1: &PositionInfo)
111830Call position::info_liquidity(&PositionInfo): u128
112334MoveLoc[5](loc1: &PositionInfo)
112435Call position::info_tick_range(&PositionInfo): I32 * I32
112536StLoc[8](loc4: I32)
112637StLoc[7](loc3: I32)
112738CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
112940MoveLoc[7](loc3: I32)
113041MoveLoc[8](loc4: I32)
113142Call get_rewards_in_tick_range<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32, I32): vector<u128>
113243StLoc[6](loc2: vector<u128>)
113344MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
113445MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
113546MoveLoc[2](Arg2: ID)
113647MoveLoc[6](loc2: vector<u128>)
113748Call position::update_rewards(&mut PositionManager, ID, vector<u128>): vector<u64>
113849StLoc[4](loc0: vector<u64>)
114151MoveLoc[5](loc1: &PositionInfo)
114353MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
114454ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
114555MoveLoc[2](Arg2: ID)
114656Call position::rewards_amount_owned(&PositionManager, ID): vector<u64>
114757StLoc[4](loc0: vector<u64>)
114958MoveLoc[4](loc0: vector<u64>)
1153public calculate_and_update_magma_distribution<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: ID): u64 {
1156L5: loc2: &PositionInfo
11600MoveLoc[0](Arg0: &GlobalConfig)
11611Call config::checked_package_version(&GlobalConfig)
11622CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
11633ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
11708MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
117210LdConst[13](u64: 13)
117512CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
117613ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
117714CopyLoc[2](Arg2: ID)
117815Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
117916StLoc[5](loc2: &PositionInfo)
118017CopyLoc[5](loc2: &PositionInfo)
118118Call position::info_liquidity(&PositionInfo): u128
118622MoveLoc[5](loc2: &PositionInfo)
118723Call position::info_tick_range(&PositionInfo): I32 * I32
118824StLoc[7](loc4: I32)
118925StLoc[6](loc3: I32)
119026CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
119127ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
119329CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
119430ImmBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
119632CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
119733ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
119834MoveLoc[6](loc3: I32)
119935Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
120036CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
120137ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
120238MoveLoc[7](loc4: I32)
120339Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
120440Call tick::get_magma_distribution_growth_in_range(I32, u128, Option<Tick>, Option<Tick>): u128
120541StLoc[4](loc1: u128)
120642MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
120743MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
120844MoveLoc[2](Arg2: ID)
120945MoveLoc[4](loc1: u128)
121046Call position::update_magma_distribution(&mut PositionManager, ID, u128): u64
121147StLoc[3](loc0: u64)
121449MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
121651MoveLoc[5](loc2: &PositionInfo)
121752Call position::info_magma_distribution_owned(&PositionInfo): u64
121853StLoc[3](loc0: u64)
122054MoveLoc[3](loc0: u64)
1224public calculate_swap_result<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &Pool<Ty0, Ty1>, Arg2: bool, Arg3: bool, Arg4: u64): CalculatedSwapResult {
1225L5: loc0: vector<SwapStepResult>
1236L16: loc11: CalculatedSwapResult
1242L22: loc17: OptionU64
1245L25: loc20: OptionU64
1249L29: loc24: SwapStepResult
1251L31: loc26: SwapResult
12580CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
12591ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
12613StLoc[20](loc15: u128)
12624CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
12635ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
12657StLoc[17](loc12: u128)
12668CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
12679ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
126911StLoc[18](loc13: u128)
127012Call default_swap_result(): SwapResult
127113StLoc[31](loc26: SwapResult)
127214MoveLoc[4](Arg4: u64)
127315StLoc[15](loc10: u64)
127416CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
127517ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
127618CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
127719ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
127921CopyLoc[2](Arg2: bool)
128022Call tick::first_score_for_swap(&TickManager, I32, bool): OptionU64
128123StLoc[22](loc17: OptionU64)
128224CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
128325ImmBorrowFieldGeneric[18](Pool.fee_rate: u64)
128527StLoc[11](loc6: u64)
128628CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
128729ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
128931StLoc[12](loc7: u128)
129133StLoc[5](loc0: vector<SwapStepResult>)
129537MoveLoc[11](loc6: u64)
129941MoveLoc[12](loc7: u128)
130143MoveLoc[5](loc0: vector<SwapStepResult>)
130244Pack[6](CalculatedSwapResult)
130345StLoc[16](loc11: CalculatedSwapResult)
130446CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
130547ImmBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
130749Call config::default_unstaked_fee_rate(): u64
131152CopyLoc[0](Arg0: &GlobalConfig)
131253Call config::unstaked_liquidity_fee_rate(&GlobalConfig): u64
131354StLoc[6](loc1: u64)
131656CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
131757ImmBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
131959StLoc[6](loc1: u64)
132160MoveLoc[6](loc1: u64)
132261StLoc[36](loc31: u64)
132362MoveLoc[0](Arg0: &GlobalConfig)
132463Call config::protocol_fee_rate(&GlobalConfig): u64
132564StLoc[24](loc19: u64)
132765CopyLoc[15](loc10: u64)
133470ImmBorrowLoc[22](loc17: OptionU64)
133571Call option_u64::is_none(&OptionU64): bool
133873MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
134176MutBorrowLoc[16](loc11: CalculatedSwapResult)
134277MutBorrowField[22](CalculatedSwapResult.is_exceed: bool)
134680CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
134781ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
134882ImmBorrowLoc[22](loc17: OptionU64)
134983Call option_u64::borrow(&OptionU64): u64
135084CopyLoc[2](Arg2: bool)
135185Call tick::borrow_tick_for_swap(&TickManager, u64, bool): &Tick * OptionU64
135286StLoc[25](loc20: OptionU64)
135387StLoc[32](loc27: &Tick)
135488MoveLoc[25](loc20: OptionU64)
135589StLoc[22](loc17: OptionU64)
135690CopyLoc[32](loc27: &Tick)
135791Call tick::sqrt_price(&Tick): u128
135892StLoc[35](loc30: u128)
135993CopyLoc[20](loc15: u128)
136094CopyLoc[35](loc30: u128)
136195CopyLoc[17](loc12: u128)
136296CopyLoc[15](loc10: u64)
136397CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
136498ImmBorrowFieldGeneric[18](Pool.fee_rate: u64)
1366100CopyLoc[2](Arg2: bool)
1367101CopyLoc[3](Arg3: bool)
1368102Call clmm_math::compute_swap_step(u128, u128, u128, u64, u64, bool, bool): u64 * u64 * u128 * u64
1369103StLoc[28](loc23: u64)
1370104StLoc[30](loc25: u128)
1371105StLoc[27](loc22: u64)
1372106StLoc[26](loc21: u64)
1373107CopyLoc[26](loc21: u64)
1379112StLoc[7](loc2: bool)
1382114CopyLoc[28](loc23: u64)
1385117StLoc[7](loc2: bool)
1387118MoveLoc[7](loc2: bool)
1390120CopyLoc[3](Arg3: bool)
1393122MoveLoc[15](loc10: u64)
1394123CopyLoc[26](loc21: u64)
1395124Call check_remainer_amount_sub(u64, u64): u64
1396125CopyLoc[28](loc23: u64)
1397126Call check_remainer_amount_sub(u64, u64): u64
1398127StLoc[8](loc3: u64)
1401129MoveLoc[15](loc10: u64)
1402130CopyLoc[27](loc22: u64)
1403131Call check_remainer_amount_sub(u64, u64): u64
1404132StLoc[8](loc3: u64)
1406133MoveLoc[8](loc3: u64)
1407134StLoc[15](loc10: u64)
1408135CopyLoc[28](loc23: u64)
1409136CopyLoc[24](loc19: u64)
1410137Call config::protocol_fee_rate_denom(): u64
1411138Call full_math_u64::mul_div_ceil(u64, u64, u64): u64
1412139StLoc[19](loc14: u64)
1413140CopyLoc[28](loc23: u64)
1414141CopyLoc[19](loc14: u64)
1416143StLoc[23](loc18: u64)
1417144CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
1418145MoveLoc[23](loc18: u64)
1419146CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
1420147ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
1422149CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
1423150ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
1425152CopyLoc[36](loc31: u64)
1426153Call calculate_fees<Ty0, Ty1>(&Pool<Ty0, Ty1>, u64, u128, u128, u64): u128 * u64
1427154StLoc[21](loc16: u64)
1429156MutBorrowLoc[31](loc26: SwapResult)
1430157CopyLoc[26](loc21: u64)
1431158CopyLoc[27](loc22: u64)
1432159CopyLoc[28](loc23: u64)
1433160MoveLoc[19](loc14: u64)
1435162MoveLoc[21](loc16: u64)
1436163Call update_swap_result(&mut SwapResult, u64, u64, u64, u64, u64, u64)
1438164MoveLoc[20](loc15: u128)
1439165CopyLoc[35](loc30: u128)
1440166CopyLoc[17](loc12: u128)
1441167MoveLoc[26](loc21: u64)
1442168MoveLoc[27](loc22: u64)
1443169MoveLoc[28](loc23: u64)
1444170CopyLoc[15](loc10: u64)
1445171Pack[7](SwapStepResult)
1446172StLoc[29](loc24: SwapStepResult)
1447173MutBorrowLoc[16](loc11: CalculatedSwapResult)
1448174MutBorrowField[23](CalculatedSwapResult.step_results: vector<SwapStepResult>)
1449175MoveLoc[29](loc24: SwapStepResult)
1451177CopyLoc[30](loc25: u128)
1452178CopyLoc[35](loc30: u128)
1456181MoveLoc[35](loc30: u128)
1457182StLoc[20](loc15: u128)
1458183CopyLoc[2](Arg2: bool)
1461185CopyLoc[32](loc27: &Tick)
1462186Call tick::liquidity_net(&Tick): I128
1463187Call i128::neg(I128): I128
1464188MoveLoc[32](loc27: &Tick)
1465189Call tick::magma_distribution_staked_liquidity_net(&Tick): I128
1466190Call i128::neg(I128): I128
1467191StLoc[10](loc5: I128)
1468192StLoc[9](loc4: I128)
1471194CopyLoc[32](loc27: &Tick)
1472195Call tick::liquidity_net(&Tick): I128
1473196MoveLoc[32](loc27: &Tick)
1474197Call tick::magma_distribution_staked_liquidity_net(&Tick): I128
1475198StLoc[10](loc5: I128)
1476199StLoc[9](loc4: I128)
1478200MoveLoc[9](loc4: I128)
1479201MoveLoc[10](loc5: I128)
1480202StLoc[34](loc29: I128)
1481203StLoc[33](loc28: I128)
1482204CopyLoc[33](loc28: I128)
1483205Call i128::abs_u128(I128): u128
1484206StLoc[13](loc8: u128)
1485207CopyLoc[34](loc29: I128)
1486208Call i128::abs_u128(I128): u128
1487209StLoc[14](loc9: u128)
1488210MoveLoc[33](loc28: I128)
1489211Call i128::is_neg(I128): bool
1493214CopyLoc[17](loc12: u128)
1494215CopyLoc[13](loc8: u128)
1495216Call math_u128::add_check(u128, u128): bool
1500219MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
1502221LdConst[1](u64: 1)
1505223MoveLoc[17](loc12: u128)
1506224MoveLoc[13](loc8: u128)
1508226StLoc[17](loc12: u128)
1511228CopyLoc[17](loc12: u128)
1512229CopyLoc[13](loc8: u128)
1518233MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
1520235LdConst[1](u64: 1)
1523237MoveLoc[17](loc12: u128)
1524238MoveLoc[13](loc8: u128)
1526240StLoc[17](loc12: u128)
1528241MoveLoc[34](loc29: I128)
1529242Call i128::is_neg(I128): bool
1533245CopyLoc[18](loc13: u128)
1534246CopyLoc[14](loc9: u128)
1535247Call math_u128::add_check(u128, u128): bool
1540250MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
1542252LdConst[1](u64: 1)
1545254MoveLoc[18](loc13: u128)
1546255MoveLoc[14](loc9: u128)
1548257StLoc[18](loc13: u128)
1551259CopyLoc[18](loc13: u128)
1552260CopyLoc[14](loc9: u128)
1558264MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
1560266LdConst[1](u64: 1)
1563268MoveLoc[18](loc13: u128)
1564269MoveLoc[14](loc9: u128)
1566271StLoc[18](loc13: u128)
1569273MoveLoc[32](loc27: &Tick)
1571275MoveLoc[30](loc25: u128)
1572276StLoc[20](loc15: u128)
1575278ImmBorrowLoc[31](loc26: SwapResult)
1576279ImmBorrowField[24](SwapResult.amount_in: u64)
1578281MutBorrowLoc[16](loc11: CalculatedSwapResult)
1579282MutBorrowField[25](CalculatedSwapResult.amount_in: u64)
1581284ImmBorrowLoc[31](loc26: SwapResult)
1582285ImmBorrowField[26](SwapResult.amount_out: u64)
1584287MutBorrowLoc[16](loc11: CalculatedSwapResult)
1585288MutBorrowField[27](CalculatedSwapResult.amount_out: u64)
1587290ImmBorrowLoc[31](loc26: SwapResult)
1588291ImmBorrowField[28](SwapResult.fee_amount: u64)
1590293MutBorrowLoc[16](loc11: CalculatedSwapResult)
1591294MutBorrowField[29](CalculatedSwapResult.fee_amount: u64)
1593296ImmBorrowLoc[31](loc26: SwapResult)
1594297ImmBorrowField[30](SwapResult.gauge_fee_amount: u64)
1596299MutBorrowLoc[16](loc11: CalculatedSwapResult)
1597300MutBorrowField[31](CalculatedSwapResult.gauge_fee_amount: u64)
1599302ImmBorrowLoc[31](loc26: SwapResult)
1600303ImmBorrowField[32](SwapResult.protocol_fee_amount: u64)
1602305MutBorrowLoc[16](loc11: CalculatedSwapResult)
1603306MutBorrowField[33](CalculatedSwapResult.protocol_fee_amount: u64)
1605308MoveLoc[20](loc15: u128)
1606309MutBorrowLoc[16](loc11: CalculatedSwapResult)
1607310MutBorrowField[34](CalculatedSwapResult.after_sqrt_price: u128)
1609312MoveLoc[16](loc11: CalculatedSwapResult)
1613public calculate_swap_result_with_partner<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &Pool<Ty0, Ty1>, Arg2: bool, Arg3: bool, Arg4: u64, Arg5: u64): CalculatedSwapResult {
1614L6: loc0: vector<SwapStepResult>
1625L17: loc11: CalculatedSwapResult
1630L22: loc16: OptionU64
1633L25: loc19: OptionU64
1639L31: loc25: SwapStepResult
1641L33: loc27: SwapResult
16480CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
16491ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
16513StLoc[20](loc14: u128)
16524CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
16535ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
16557StLoc[18](loc12: u128)
16568CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
16579ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
165911StLoc[19](loc13: u128)
166012Call default_swap_result(): SwapResult
166113StLoc[33](loc27: SwapResult)
166214MoveLoc[4](Arg4: u64)
166315StLoc[16](loc10: u64)
166416CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
166517ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
166618CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
166719ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
166921CopyLoc[2](Arg2: bool)
167022Call tick::first_score_for_swap(&TickManager, I32, bool): OptionU64
167123StLoc[22](loc16: OptionU64)
167224CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
167325ImmBorrowFieldGeneric[18](Pool.fee_rate: u64)
167527StLoc[12](loc6: u64)
167628CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
167729ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
167931StLoc[13](loc7: u128)
168133StLoc[6](loc0: vector<SwapStepResult>)
168537MoveLoc[12](loc6: u64)
168941MoveLoc[13](loc7: u128)
169143MoveLoc[6](loc0: vector<SwapStepResult>)
169244Pack[6](CalculatedSwapResult)
169345StLoc[17](loc11: CalculatedSwapResult)
169446CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
169547ImmBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
169749Call config::default_unstaked_fee_rate(): u64
170152CopyLoc[0](Arg0: &GlobalConfig)
170253Call config::unstaked_liquidity_fee_rate(&GlobalConfig): u64
170354StLoc[7](loc1: u64)
170656CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
170757ImmBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
170959StLoc[7](loc1: u64)
171160MoveLoc[7](loc1: u64)
171261StLoc[38](loc32: u64)
171362MoveLoc[0](Arg0: &GlobalConfig)
171463Call config::protocol_fee_rate(&GlobalConfig): u64
171564StLoc[24](loc18: u64)
171765CopyLoc[16](loc10: u64)
172470ImmBorrowLoc[22](loc16: OptionU64)
172571Call option_u64::is_none(&OptionU64): bool
172873MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
173176MutBorrowLoc[17](loc11: CalculatedSwapResult)
173277MutBorrowField[22](CalculatedSwapResult.is_exceed: bool)
173680CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
173781ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
173882ImmBorrowLoc[22](loc16: OptionU64)
173983Call option_u64::borrow(&OptionU64): u64
174084CopyLoc[2](Arg2: bool)
174185Call tick::borrow_tick_for_swap(&TickManager, u64, bool): &Tick * OptionU64
174286StLoc[25](loc19: OptionU64)
174387StLoc[34](loc28: &Tick)
174488MoveLoc[25](loc19: OptionU64)
174589StLoc[22](loc16: OptionU64)
174690CopyLoc[34](loc28: &Tick)
174791Call tick::sqrt_price(&Tick): u128
174892StLoc[37](loc31: u128)
174993CopyLoc[20](loc14: u128)
175094CopyLoc[37](loc31: u128)
175195CopyLoc[18](loc12: u128)
175296CopyLoc[16](loc10: u64)
175397CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
175498ImmBorrowFieldGeneric[18](Pool.fee_rate: u64)
1756100CopyLoc[2](Arg2: bool)
1757101CopyLoc[3](Arg3: bool)
1758102Call clmm_math::compute_swap_step(u128, u128, u128, u64, u64, bool, bool): u64 * u64 * u128 * u64
1759103StLoc[28](loc22: u64)
1760104StLoc[32](loc26: u128)
1761105StLoc[27](loc21: u64)
1762106StLoc[26](loc20: u64)
1763107CopyLoc[26](loc20: u64)
1769112StLoc[8](loc2: bool)
1772114CopyLoc[28](loc22: u64)
1775117StLoc[8](loc2: bool)
1777118MoveLoc[8](loc2: bool)
1780120CopyLoc[3](Arg3: bool)
1783122MoveLoc[16](loc10: u64)
1784123CopyLoc[26](loc20: u64)
1785124Call check_remainer_amount_sub(u64, u64): u64
1786125CopyLoc[28](loc22: u64)
1787126Call check_remainer_amount_sub(u64, u64): u64
1788127StLoc[9](loc3: u64)
1791129MoveLoc[16](loc10: u64)
1792130CopyLoc[27](loc21: u64)
1793131Call check_remainer_amount_sub(u64, u64): u64
1794132StLoc[9](loc3: u64)
1796133MoveLoc[9](loc3: u64)
1797134StLoc[16](loc10: u64)
1798135CopyLoc[28](loc22: u64)
1799136CopyLoc[5](Arg5: u64)
1800137Call config::protocol_fee_rate_denom(): u64
1801138Call full_math_u64::mul_div_ceil(u64, u64, u64): u64
1802139StLoc[29](loc23: u64)
1803140CopyLoc[28](loc22: u64)
1804141CopyLoc[29](loc23: u64)
1806143StLoc[23](loc17: u64)
1808145StLoc[21](loc15: u64)
1810147StLoc[30](loc24: u64)
1811148CopyLoc[23](loc17: u64)
1816152CopyLoc[23](loc17: u64)
1817153CopyLoc[24](loc18: u64)
1818154Call config::protocol_fee_rate_denom(): u64
1819155Call full_math_u64::mul_div_ceil(u64, u64, u64): u64
1820156StLoc[30](loc24: u64)
1821157MoveLoc[23](loc17: u64)
1822158CopyLoc[30](loc24: u64)
1824160StLoc[23](loc17: u64)
1825161CopyLoc[23](loc17: u64)
1830165CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
1831166MoveLoc[23](loc17: u64)
1832167CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
1833168ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
1835170CopyLoc[1](Arg1: &Pool<Ty0, Ty1>)
1836171ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
1838173CopyLoc[38](loc32: u64)
1839174Call calculate_fees<Ty0, Ty1>(&Pool<Ty0, Ty1>, u64, u128, u128, u64): u128 * u64
1840175StLoc[21](loc15: u64)
1843177MutBorrowLoc[33](loc27: SwapResult)
1844178CopyLoc[26](loc20: u64)
1845179CopyLoc[27](loc21: u64)
1846180CopyLoc[28](loc22: u64)
1847181MoveLoc[30](loc24: u64)
1848182MoveLoc[29](loc23: u64)
1849183MoveLoc[21](loc15: u64)
1850184Call update_swap_result(&mut SwapResult, u64, u64, u64, u64, u64, u64)
1852185MoveLoc[20](loc14: u128)
1853186CopyLoc[37](loc31: u128)
1854187CopyLoc[18](loc12: u128)
1855188MoveLoc[26](loc20: u64)
1856189MoveLoc[27](loc21: u64)
1857190MoveLoc[28](loc22: u64)
1858191CopyLoc[16](loc10: u64)
1859192Pack[7](SwapStepResult)
1860193StLoc[31](loc25: SwapStepResult)
1861194MutBorrowLoc[17](loc11: CalculatedSwapResult)
1862195MutBorrowField[23](CalculatedSwapResult.step_results: vector<SwapStepResult>)
1863196MoveLoc[31](loc25: SwapStepResult)
1865198CopyLoc[32](loc26: u128)
1866199CopyLoc[37](loc31: u128)
1870202MoveLoc[37](loc31: u128)
1871203StLoc[20](loc14: u128)
1872204CopyLoc[2](Arg2: bool)
1875206CopyLoc[34](loc28: &Tick)
1876207Call tick::liquidity_net(&Tick): I128
1877208Call i128::neg(I128): I128
1878209MoveLoc[34](loc28: &Tick)
1879210Call tick::magma_distribution_staked_liquidity_net(&Tick): I128
1880211Call i128::neg(I128): I128
1881212StLoc[11](loc5: I128)
1882213StLoc[10](loc4: I128)
1885215CopyLoc[34](loc28: &Tick)
1886216Call tick::liquidity_net(&Tick): I128
1887217MoveLoc[34](loc28: &Tick)
1888218Call tick::magma_distribution_staked_liquidity_net(&Tick): I128
1889219StLoc[11](loc5: I128)
1890220StLoc[10](loc4: I128)
1892221MoveLoc[10](loc4: I128)
1893222MoveLoc[11](loc5: I128)
1894223StLoc[36](loc30: I128)
1895224StLoc[35](loc29: I128)
1896225CopyLoc[35](loc29: I128)
1897226Call i128::abs_u128(I128): u128
1898227StLoc[14](loc8: u128)
1899228CopyLoc[36](loc30: I128)
1900229Call i128::abs_u128(I128): u128
1901230StLoc[15](loc9: u128)
1902231MoveLoc[35](loc29: I128)
1903232Call i128::is_neg(I128): bool
1907235CopyLoc[18](loc12: u128)
1908236CopyLoc[14](loc8: u128)
1909237Call math_u128::add_check(u128, u128): bool
1914240MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
1916242LdConst[1](u64: 1)
1919244MoveLoc[18](loc12: u128)
1920245MoveLoc[14](loc8: u128)
1922247StLoc[18](loc12: u128)
1925249CopyLoc[18](loc12: u128)
1926250CopyLoc[14](loc8: u128)
1932254MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
1934256LdConst[1](u64: 1)
1937258MoveLoc[18](loc12: u128)
1938259MoveLoc[14](loc8: u128)
1940261StLoc[18](loc12: u128)
1942262MoveLoc[36](loc30: I128)
1943263Call i128::is_neg(I128): bool
1947266CopyLoc[19](loc13: u128)
1948267CopyLoc[15](loc9: u128)
1949268Call math_u128::add_check(u128, u128): bool
1954271MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
1956273LdConst[1](u64: 1)
1959275MoveLoc[19](loc13: u128)
1960276MoveLoc[15](loc9: u128)
1962278StLoc[19](loc13: u128)
1965280CopyLoc[19](loc13: u128)
1966281CopyLoc[15](loc9: u128)
1972285MoveLoc[1](Arg1: &Pool<Ty0, Ty1>)
1974287LdConst[1](u64: 1)
1977289MoveLoc[19](loc13: u128)
1978290MoveLoc[15](loc9: u128)
1980292StLoc[19](loc13: u128)
1983294MoveLoc[34](loc28: &Tick)
1985296MoveLoc[32](loc26: u128)
1986297StLoc[20](loc14: u128)
1989299ImmBorrowLoc[33](loc27: SwapResult)
1990300ImmBorrowField[24](SwapResult.amount_in: u64)
1992302MutBorrowLoc[17](loc11: CalculatedSwapResult)
1993303MutBorrowField[25](CalculatedSwapResult.amount_in: u64)
1995305ImmBorrowLoc[33](loc27: SwapResult)
1996306ImmBorrowField[26](SwapResult.amount_out: u64)
1998308MutBorrowLoc[17](loc11: CalculatedSwapResult)
1999309MutBorrowField[27](CalculatedSwapResult.amount_out: u64)
2001311ImmBorrowLoc[33](loc27: SwapResult)
2002312ImmBorrowField[28](SwapResult.fee_amount: u64)
2004314MutBorrowLoc[17](loc11: CalculatedSwapResult)
2005315MutBorrowField[29](CalculatedSwapResult.fee_amount: u64)
2007317ImmBorrowLoc[33](loc27: SwapResult)
2008318ImmBorrowField[30](SwapResult.gauge_fee_amount: u64)
2010320MutBorrowLoc[17](loc11: CalculatedSwapResult)
2011321MutBorrowField[31](CalculatedSwapResult.gauge_fee_amount: u64)
2013323ImmBorrowLoc[33](loc27: SwapResult)
2014324ImmBorrowField[32](SwapResult.protocol_fee_amount: u64)
2016326MutBorrowLoc[17](loc11: CalculatedSwapResult)
2017327MutBorrowField[33](CalculatedSwapResult.protocol_fee_amount: u64)
2019329ImmBorrowLoc[33](loc27: SwapResult)
2020330ImmBorrowField[35](SwapResult.ref_fee_amount: u64)
2022332MutBorrowLoc[17](loc11: CalculatedSwapResult)
2023333MutBorrowField[36](CalculatedSwapResult.ref_fee_amount: u64)
2025335MoveLoc[20](loc14: u128)
2026336MutBorrowLoc[17](loc11: CalculatedSwapResult)
2027337MutBorrowField[34](CalculatedSwapResult.after_sqrt_price: u128)
2029339MoveLoc[17](loc11: CalculatedSwapResult)
2033public calculate_swap_result_step_results(Arg0: &CalculatedSwapResult): &vector<SwapStepResult> {
20350MoveLoc[0](Arg0: &CalculatedSwapResult)
20361ImmBorrowField[23](CalculatedSwapResult.step_results: vector<SwapStepResult>)
2040public calculated_swap_result_after_sqrt_price(Arg0: &CalculatedSwapResult): u128 {
20420MoveLoc[0](Arg0: &CalculatedSwapResult)
20431ImmBorrowField[34](CalculatedSwapResult.after_sqrt_price: u128)
2048public calculated_swap_result_amount_in(Arg0: &CalculatedSwapResult): u64 {
20500MoveLoc[0](Arg0: &CalculatedSwapResult)
20511ImmBorrowField[25](CalculatedSwapResult.amount_in: u64)
2056public calculated_swap_result_amount_out(Arg0: &CalculatedSwapResult): u64 {
20580MoveLoc[0](Arg0: &CalculatedSwapResult)
20591ImmBorrowField[27](CalculatedSwapResult.amount_out: u64)
2064public calculated_swap_result_fees_amount(Arg0: &CalculatedSwapResult): u64 * u64 * u64 * u64 {
20660CopyLoc[0](Arg0: &CalculatedSwapResult)
20671ImmBorrowField[29](CalculatedSwapResult.fee_amount: u64)
20693CopyLoc[0](Arg0: &CalculatedSwapResult)
20704ImmBorrowField[36](CalculatedSwapResult.ref_fee_amount: u64)
20726CopyLoc[0](Arg0: &CalculatedSwapResult)
20737ImmBorrowField[33](CalculatedSwapResult.protocol_fee_amount: u64)
20759MoveLoc[0](Arg0: &CalculatedSwapResult)
207610ImmBorrowField[31](CalculatedSwapResult.gauge_fee_amount: u64)
2081public calculated_swap_result_is_exceed(Arg0: &CalculatedSwapResult): bool {
20830MoveLoc[0](Arg0: &CalculatedSwapResult)
20841ImmBorrowField[22](CalculatedSwapResult.is_exceed: bool)
2089public calculated_swap_result_step_swap_result(Arg0: &CalculatedSwapResult, Arg1: u64): &SwapStepResult {
20910MoveLoc[0](Arg0: &CalculatedSwapResult)
20921ImmBorrowField[23](CalculatedSwapResult.step_results: vector<SwapStepResult>)
20932MoveLoc[1](Arg1: u64)
2098public calculated_swap_result_steps_length(Arg0: &CalculatedSwapResult): u64 {
21000MoveLoc[0](Arg0: &CalculatedSwapResult)
21011ImmBorrowField[23](CalculatedSwapResult.step_results: vector<SwapStepResult>)
2106check_remainer_amount_sub(Arg0: u64, Arg1: u64): u64 {
21080CopyLoc[0](Arg0: u64)
21091CopyLoc[1](Arg1: u64)
21187MoveLoc[0](Arg0: u64)
21198MoveLoc[1](Arg1: u64)
2124public collect_fee<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &Position, Arg3: bool): Balance<Ty0> * Balance<Ty1> {
21360MoveLoc[0](Arg0: &GlobalConfig)
21371Call config::checked_package_version(&GlobalConfig)
21382CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
21393ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
21468MoveLoc[2](Arg2: &Position)
214810MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
215012LdConst[13](u64: 13)
215314CopyLoc[2](Arg2: &Position)
215415Call object::id<Position>(&Position): ID
215516StLoc[11](loc7: ID)
215617CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
215819CopyLoc[11](loc7: ID)
215920Call borrow_position_info<Ty0, Ty1>(&Pool<Ty0, Ty1>, ID): &PositionInfo
216021Call position::is_staked(&PositionInfo): bool
216323MoveLoc[2](Arg2: &Position)
216525MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
216727Call balance::zero<Ty0>(): Balance<Ty0>
216828Call balance::zero<Ty1>(): Balance<Ty1>
217130CopyLoc[2](Arg2: &Position)
217231Call position::tick_range(&Position): I32 * I32
217332StLoc[13](loc9: I32)
217433StLoc[12](loc8: I32)
217534MoveLoc[3](Arg3: bool)
217836MoveLoc[2](Arg2: &Position)
217937Call position::liquidity(&Position): u128
218240StLoc[4](loc0: bool)
218542MoveLoc[2](Arg2: &Position)
218845StLoc[4](loc0: bool)
219046MoveLoc[4](loc0: bool)
219348CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
219550MoveLoc[12](loc8: I32)
219651MoveLoc[13](loc9: I32)
219752Call get_fee_in_tick_range<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32, I32): u128 * u128
219853StLoc[10](loc6: u128)
219954StLoc[9](loc5: u128)
220055CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
220156MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
220257CopyLoc[11](loc7: ID)
220358MoveLoc[9](loc5: u128)
220459MoveLoc[10](loc6: u128)
220560Call position::update_and_reset_fee(&mut PositionManager, ID, u128, u128): u64 * u64
220661StLoc[6](loc2: u64)
220762StLoc[5](loc1: u64)
221064CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
221165MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
221266CopyLoc[11](loc7: ID)
221367Call position::reset_fee(&mut PositionManager, ID): u64 * u64
221468StLoc[6](loc2: u64)
221569StLoc[5](loc1: u64)
221770MoveLoc[5](loc1: u64)
221871MoveLoc[6](loc2: u64)
221972StLoc[8](loc4: u64)
222073StLoc[7](loc3: u64)
222174MoveLoc[11](loc7: ID)
222275CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
222477Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
222578CopyLoc[7](loc3: u64)
222679CopyLoc[8](loc4: u64)
222780Pack[14](CollectFeeEvent)
222881Call event::emit<CollectFeeEvent>(CollectFeeEvent)
222982CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
223083MutBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
223184MoveLoc[7](loc3: u64)
223285Call balance::split<Ty0>(&mut Balance<Ty0>, u64): Balance<Ty0>
223386MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
223487MutBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
223588MoveLoc[8](loc4: u64)
223689Call balance::split<Ty1>(&mut Balance<Ty1>, u64): Balance<Ty1>
2240public collect_protocol_fee<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut TxContext): Balance<Ty0> * Balance<Ty1> {
22440CopyLoc[0](Arg0: &GlobalConfig)
22451Call config::checked_package_version(&GlobalConfig)
22462CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
22473ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
22548MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
225610MoveLoc[2](Arg2: &mut TxContext)
225812MoveLoc[0](Arg0: &GlobalConfig)
226014LdConst[13](u64: 13)
226316MoveLoc[0](Arg0: &GlobalConfig)
226417MoveLoc[2](Arg2: &mut TxContext)
226619Call tx_context::sender(&TxContext): address
226720Call config::check_protocol_fee_claim_role(&GlobalConfig, address)
226821CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
226922ImmBorrowFieldGeneric[20](Pool.fee_protocol_coin_a: u64)
227124StLoc[3](loc0: u64)
227225CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
227326ImmBorrowFieldGeneric[21](Pool.fee_protocol_coin_b: u64)
227528StLoc[4](loc1: u64)
227730CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
227831MutBorrowFieldGeneric[20](Pool.fee_protocol_coin_a: u64)
228134CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
228235MutBorrowFieldGeneric[21](Pool.fee_protocol_coin_b: u64)
228437CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
228639Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
228740CopyLoc[3](loc0: u64)
228841CopyLoc[4](loc1: u64)
228942Pack[13](CollectProtocolFeeEvent)
229043Call event::emit<CollectProtocolFeeEvent>(CollectProtocolFeeEvent)
229144CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
229245MutBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
229346MoveLoc[3](loc0: u64)
229447Call balance::split<Ty0>(&mut Balance<Ty0>, u64): Balance<Ty0>
229548MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
229649MutBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
229750MoveLoc[4](loc1: u64)
229851Call balance::split<Ty1>(&mut Balance<Ty1>, u64): Balance<Ty1>
2302public collect_reward<Ty0, Ty1, Ty2>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &Position, Arg3: &mut RewarderGlobalVault, Arg4: bool, Arg5: &Clock): Balance<Ty2> {
2307L10: loc4: Option<u64>
2310L13: loc7: vector<u128>
23140MoveLoc[0](Arg0: &GlobalConfig)
23151Call config::checked_package_version(&GlobalConfig)
23162CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
23173ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
23248MoveLoc[3](Arg3: &mut RewarderGlobalVault)
232610MoveLoc[2](Arg2: &Position)
232812MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
233014MoveLoc[5](Arg5: &Clock)
233216LdConst[13](u64: 13)
233518CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
233619MutBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
233720CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
233821ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
234023MoveLoc[5](Arg5: &Clock)
234124Call clock::timestamp_ms(&Clock): u64
234427Call rewarder::settle(&mut RewarderManager, u128, u64)
234528CopyLoc[2](Arg2: &Position)
234629Call object::id<Position>(&Position): ID
234730StLoc[11](loc5: ID)
234831CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
234932ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
235033Call rewarder::rewarder_index<Ty2>(&RewarderManager): Option<u64>
235134StLoc[10](loc4: Option<u64>)
235235ImmBorrowLoc[10](loc4: Option<u64>)
235336Call option::is_some<u64>(&Option<u64>): bool
235839MoveLoc[3](Arg3: &mut RewarderGlobalVault)
236041MoveLoc[2](Arg2: &Position)
236243MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
236445LdConst[17](u64: 17)
236747MutBorrowLoc[10](loc4: Option<u64>)
236848Call option::extract<u64>(&mut Option<u64>): u64
236949StLoc[12](loc6: u64)
237050MoveLoc[4](Arg4: bool)
237352CopyLoc[2](Arg2: &Position)
237453Call position::liquidity(&Position): u128
237756StLoc[7](loc1: bool)
238159StLoc[7](loc1: bool)
238360MoveLoc[7](loc1: bool)
238763StLoc[6](loc0: bool)
239065CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
239166ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
239267CopyLoc[11](loc5: ID)
239368Call position::inited_rewards_count(&PositionManager, ID): u64
239469CopyLoc[12](loc6: u64)
239671StLoc[6](loc0: bool)
239872MoveLoc[6](loc0: bool)
240174MoveLoc[2](Arg2: &Position)
240275Call position::tick_range(&Position): I32 * I32
240376StLoc[15](loc9: I32)
240477StLoc[14](loc8: I32)
240578CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
240780MoveLoc[14](loc8: I32)
240881MoveLoc[15](loc9: I32)
240982Call get_rewards_in_tick_range<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32, I32): vector<u128>
241083StLoc[13](loc7: vector<u128>)
241184CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
241285MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
241386CopyLoc[11](loc5: ID)
241487MoveLoc[13](loc7: vector<u128>)
241588MoveLoc[12](loc6: u64)
241689Call position::update_and_reset_rewards(&mut PositionManager, ID, vector<u128>, u64): u64
241790StLoc[8](loc2: u64)
242092MoveLoc[2](Arg2: &Position)
242294CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
242395MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
242496CopyLoc[11](loc5: ID)
242597MoveLoc[12](loc6: u64)
242698Call position::reset_rewarder(&mut PositionManager, ID, u64): u64
242799StLoc[8](loc2: u64)
2429100MoveLoc[8](loc2: u64)
2430101StLoc[9](loc3: u64)
2431102CopyLoc[11](loc5: ID)
2432103CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
2434105Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
2435106CopyLoc[9](loc3: u64)
2436107Pack[18](CollectRewardEvent)
2437108Call event::emit<CollectRewardEvent>(CollectRewardEvent)
2438109MoveLoc[11](loc5: ID)
2439110MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
2441112Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
2442113CopyLoc[9](loc3: u64)
2443114Call type_name::get<Ty2>(): TypeName
2444115Pack[19](CollectRewardTypeEvent)
2445116Call event::emit<CollectRewardTypeEvent>(CollectRewardTypeEvent)
2446117MoveLoc[3](Arg3: &mut RewarderGlobalVault)
2447118MoveLoc[9](loc3: u64)
2448119Call rewarder::withdraw_reward<Ty2>(&mut RewarderGlobalVault, u64): Balance<Ty2>
2452public current_sqrt_price<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u128 {
24540MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
24551ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
2460public current_tick_index<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): I32 {
24620MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
24631ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
2468default_swap_result(): SwapResult {
2481public fee_rate<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u64 {
24830MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
24841ImmBorrowFieldGeneric[18](Pool.fee_rate: u64)
2489public fees_growth_global<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u128 * u128 {
24910CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
24921ImmBorrowFieldGeneric[10](Pool.fee_growth_global_a: u128)
24943MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
24954ImmBorrowFieldGeneric[11](Pool.fee_growth_global_b: u128)
2500public flash_swap<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: bool, Arg3: bool, Arg4: u64, Arg5: u128, Arg6: &Clock): Balance<Ty0> * Balance<Ty1> * FlashSwapReceipt<Ty0, Ty1> {
25020CopyLoc[0](Arg0: &GlobalConfig)
25031Call config::checked_package_version(&GlobalConfig)
25042CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
25053ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
25128MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
251410MoveLoc[6](Arg6: &Clock)
251612MoveLoc[0](Arg0: &GlobalConfig)
251814LdConst[13](u64: 13)
252116MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
252217MoveLoc[0](Arg0: &GlobalConfig)
252318LdConst[25](address: 0x00..)
252419Call object::id_from_address(address): ID
252621MoveLoc[2](Arg2: bool)
252722MoveLoc[3](Arg3: bool)
252823MoveLoc[4](Arg4: u64)
252924MoveLoc[5](Arg5: u128)
253025MoveLoc[6](Arg6: &Clock)
253126Call flash_swap_internal<Ty0, Ty1>(&mut Pool<Ty0, Ty1>, &GlobalConfig, ID, u64, bool, bool, u64, u128, &Clock): Balance<Ty0> * Balance<Ty1> * FlashSwapReceipt<Ty0, Ty1>
2535flash_swap_internal<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GlobalConfig, Arg2: ID, Arg3: u64, Arg4: bool, Arg5: bool, Arg6: u64, Arg7: u128, Arg8: &Clock): Balance<Ty0> * Balance<Ty1> * FlashSwapReceipt<Ty0, Ty1> {
2537L10: loc1: Balance<Ty1>
2558L31: loc22: &mut Pool<Ty0, Ty1>
2559L32: loc23: Balance<Ty0>
2560L33: loc24: Balance<Ty0>
2561L34: loc25: Balance<Ty1>
2563L36: loc27: FlashSwapReceipt<Ty0, Ty1>
2564L37: loc28: SwapResult
25660CopyLoc[6](Arg6: u64)
25735MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
25757MoveLoc[8](Arg8: &Clock)
25779MoveLoc[1](Arg1: &GlobalConfig)
258213CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
258314MutBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
258415CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
258516ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
258718CopyLoc[8](Arg8: &Clock)
258819Call clock::timestamp_ms(&Clock): u64
259122Call rewarder::settle(&mut RewarderManager, u128, u64)
259223CopyLoc[4](Arg4: bool)
259525CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
259626ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
259828CopyLoc[7](Arg7: u128)
260231CopyLoc[7](Arg7: u128)
260332Call tick_math::min_sqrt_price(): u128
260534StLoc[9](loc0: bool)
260937StLoc[9](loc0: bool)
261138MoveLoc[9](loc0: bool)
261641MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
261843MoveLoc[8](Arg8: &Clock)
262045MoveLoc[1](Arg1: &GlobalConfig)
262247LdConst[11](u64: 11)
262549CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
262650ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
262852CopyLoc[7](Arg7: u128)
263255CopyLoc[7](Arg7: u128)
263356Call tick_math::max_sqrt_price(): u128
263558StLoc[20](loc11: bool)
263961StLoc[20](loc11: bool)
264162MoveLoc[20](loc11: bool)
264665MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
264867MoveLoc[8](Arg8: &Clock)
265069MoveLoc[1](Arg1: &GlobalConfig)
265271LdConst[11](u64: 11)
265573CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
265674ImmBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
265876StLoc[35](loc26: u64)
265977CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
266078StLoc[31](loc22: &mut Pool<Ty0, Ty1>)
266179CopyLoc[4](Arg4: bool)
266280StLoc[30](loc21: bool)
266381MoveLoc[5](Arg5: bool)
266482StLoc[29](loc20: bool)
266583MoveLoc[7](Arg7: u128)
266684StLoc[28](loc19: u128)
266785MoveLoc[6](Arg6: u64)
266886StLoc[27](loc18: u64)
266987CopyLoc[35](loc26: u64)
267088Call config::default_unstaked_fee_rate(): u64
267491CopyLoc[1](Arg1: &GlobalConfig)
267592Call config::unstaked_liquidity_fee_rate(&GlobalConfig): u64
267693StLoc[26](loc17: u64)
267995MoveLoc[35](loc26: u64)
268096StLoc[26](loc17: u64)
268297MoveLoc[31](loc22: &mut Pool<Ty0, Ty1>)
268398MoveLoc[30](loc21: bool)
268499MoveLoc[29](loc20: bool)
2685100MoveLoc[28](loc19: u128)
2686101MoveLoc[27](loc18: u64)
2687102MoveLoc[26](loc17: u64)
2688103MoveLoc[1](Arg1: &GlobalConfig)
2689104Call config::protocol_fee_rate(&GlobalConfig): u64
2690105MoveLoc[3](Arg3: u64)
2691106MoveLoc[8](Arg8: &Clock)
2692107Call swap_in_pool<Ty0, Ty1>(&mut Pool<Ty0, Ty1>, bool, bool, u128, u64, u64, u64, u64, &Clock): SwapResult
2693108StLoc[37](loc28: SwapResult)
2694109ImmBorrowLoc[37](loc28: SwapResult)
2695110ImmBorrowField[26](SwapResult.amount_out: u64)
2703116MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2705118LdConst[18](u64: 18)
2708120CopyLoc[4](Arg4: bool)
2711122Call balance::zero<Ty0>(): Balance<Ty0>
2712123CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2713124MutBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
2714125ImmBorrowLoc[37](loc28: SwapResult)
2715126ImmBorrowField[26](SwapResult.amount_out: u64)
2717128Call balance::split<Ty1>(&mut Balance<Ty1>, u64): Balance<Ty1>
2718129StLoc[10](loc1: Balance<Ty1>)
2719130StLoc[32](loc23: Balance<Ty0>)
2722132CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2723133MutBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
2724134ImmBorrowLoc[37](loc28: SwapResult)
2725135ImmBorrowField[26](SwapResult.amount_out: u64)
2727137Call balance::split<Ty0>(&mut Balance<Ty0>, u64): Balance<Ty0>
2728138Call balance::zero<Ty1>(): Balance<Ty1>
2729139StLoc[10](loc1: Balance<Ty1>)
2730140StLoc[32](loc23: Balance<Ty0>)
2732141MoveLoc[32](loc23: Balance<Ty0>)
2733142MoveLoc[10](loc1: Balance<Ty1>)
2734143StLoc[34](loc25: Balance<Ty1>)
2735144StLoc[33](loc24: Balance<Ty0>)
2736145CopyLoc[4](Arg4: bool)
2737146StLoc[11](loc2: bool)
2738147CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2740149Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
2741150StLoc[12](loc3: ID)
2742151CopyLoc[2](Arg2: ID)
2743152StLoc[13](loc4: ID)
2744153ImmBorrowLoc[37](loc28: SwapResult)
2745154ImmBorrowField[24](SwapResult.amount_in: u64)
2747156ImmBorrowLoc[37](loc28: SwapResult)
2748157ImmBorrowField[28](SwapResult.fee_amount: u64)
2751160StLoc[14](loc5: u64)
2752161ImmBorrowLoc[37](loc28: SwapResult)
2753162ImmBorrowField[26](SwapResult.amount_out: u64)
2755164StLoc[15](loc6: u64)
2756165ImmBorrowLoc[37](loc28: SwapResult)
2757166ImmBorrowField[35](SwapResult.ref_fee_amount: u64)
2759168StLoc[16](loc7: u64)
2760169ImmBorrowLoc[37](loc28: SwapResult)
2761170ImmBorrowField[28](SwapResult.fee_amount: u64)
2763172StLoc[17](loc8: u64)
2764173ImmBorrowLoc[37](loc28: SwapResult)
2765174ImmBorrowField[30](SwapResult.gauge_fee_amount: u64)
2767176StLoc[18](loc9: u64)
2768177ImmBorrowLoc[37](loc28: SwapResult)
2769178ImmBorrowField[32](SwapResult.protocol_fee_amount: u64)
2771180StLoc[19](loc10: u64)
2772181CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2773182ImmBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
2774183Call balance::value<Ty0>(&Balance<Ty0>): u64
2775184StLoc[21](loc12: u64)
2776185CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2777186ImmBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
2778187Call balance::value<Ty1>(&Balance<Ty1>): u64
2779188StLoc[22](loc13: u64)
2780189CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2781190ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
2783192StLoc[23](loc14: u128)
2784193CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2785194ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
2787196StLoc[24](loc15: u128)
2788197ImmBorrowLoc[37](loc28: SwapResult)
2789198ImmBorrowField[39](SwapResult.steps: u64)
2791200StLoc[25](loc16: u64)
2792201MoveLoc[11](loc2: bool)
2793202MoveLoc[12](loc3: ID)
2794203MoveLoc[13](loc4: ID)
2795204MoveLoc[14](loc5: u64)
2796205MoveLoc[15](loc6: u64)
2797206MoveLoc[18](loc9: u64)
2798207MoveLoc[19](loc10: u64)
2799208MoveLoc[16](loc7: u64)
2800209MoveLoc[17](loc8: u64)
2801210MoveLoc[21](loc12: u64)
2802211MoveLoc[22](loc13: u64)
2803212MoveLoc[23](loc14: u128)
2804213MoveLoc[24](loc15: u128)
2805214MoveLoc[25](loc16: u64)
2806215Pack[12](SwapEvent)
2807216Call event::emit<SwapEvent>(SwapEvent)
2808217MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
2810219Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
2811220MoveLoc[4](Arg4: bool)
2812221MoveLoc[2](Arg2: ID)
2813222ImmBorrowLoc[37](loc28: SwapResult)
2814223ImmBorrowField[24](SwapResult.amount_in: u64)
2816225ImmBorrowLoc[37](loc28: SwapResult)
2817226ImmBorrowField[28](SwapResult.fee_amount: u64)
2820229ImmBorrowLoc[37](loc28: SwapResult)
2821230ImmBorrowField[28](SwapResult.fee_amount: u64)
2823232ImmBorrowLoc[37](loc28: SwapResult)
2824233ImmBorrowField[32](SwapResult.protocol_fee_amount: u64)
2826235ImmBorrowLoc[37](loc28: SwapResult)
2827236ImmBorrowField[35](SwapResult.ref_fee_amount: u64)
2829238ImmBorrowLoc[37](loc28: SwapResult)
2830239ImmBorrowField[30](SwapResult.gauge_fee_amount: u64)
2832241PackGeneric[2](FlashSwapReceipt<Ty0, Ty1>)
2833242StLoc[36](loc27: FlashSwapReceipt<Ty0, Ty1>)
2834243MoveLoc[33](loc24: Balance<Ty0>)
2835244MoveLoc[34](loc25: Balance<Ty1>)
2836245MoveLoc[36](loc27: FlashSwapReceipt<Ty0, Ty1>)
2840public flash_swap_with_partner<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &Partner, Arg3: bool, Arg4: bool, Arg5: u64, Arg6: u128, Arg7: &Clock): Balance<Ty0> * Balance<Ty1> * FlashSwapReceipt<Ty0, Ty1> {
28420CopyLoc[0](Arg0: &GlobalConfig)
28431Call config::checked_package_version(&GlobalConfig)
28442CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
28453ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
28528MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
285410MoveLoc[2](Arg2: &Partner)
285612MoveLoc[7](Arg7: &Clock)
285814MoveLoc[0](Arg0: &GlobalConfig)
286016LdConst[13](u64: 13)
286318MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
286419MoveLoc[0](Arg0: &GlobalConfig)
286520CopyLoc[2](Arg2: &Partner)
286621Call object::id<Partner>(&Partner): ID
286722MoveLoc[2](Arg2: &Partner)
286823CopyLoc[7](Arg7: &Clock)
286924Call clock::timestamp_ms(&Clock): u64
287227Call partner::current_ref_fee_rate(&Partner, u64): u64
287328MoveLoc[3](Arg3: bool)
287429MoveLoc[4](Arg4: bool)
287530MoveLoc[5](Arg5: u64)
287631MoveLoc[6](Arg6: u128)
287732MoveLoc[7](Arg7: &Clock)
287833Call flash_swap_internal<Ty0, Ty1>(&mut Pool<Ty0, Ty1>, &GlobalConfig, ID, u64, bool, bool, u64, u128, &Clock): Balance<Ty0> * Balance<Ty1> * FlashSwapReceipt<Ty0, Ty1>
2882public get_fee_in_tick_range<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: I32, Arg2: I32): u128 * u128 {
28840CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
28851ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
28873CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
28884ImmBorrowFieldGeneric[10](Pool.fee_growth_global_a: u128)
28906CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
28917ImmBorrowFieldGeneric[11](Pool.fee_growth_global_b: u128)
28939CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
289410ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
289511MoveLoc[1](Arg1: I32)
289612Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
289713MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
289814ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
289915MoveLoc[2](Arg2: I32)
290016Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
290117Call tick::get_fee_in_range(I32, u128, u128, Option<Tick>, Option<Tick>): u128 * u128
2905public get_all_growths_in_tick_range<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: I32, Arg2: I32): u128 * u128 * vector<u128> * u128 * u128 {
2906L3: loc0: Option<Tick>
2907L4: loc1: Option<Tick>
29090CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
29101ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
29112MoveLoc[1](Arg1: I32)
29123Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
29134StLoc[3](loc0: Option<Tick>)
29145CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
29156ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
29167MoveLoc[2](Arg2: I32)
29178Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
29189StLoc[4](loc1: Option<Tick>)
291910CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
292011ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
292213CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
292314ImmBorrowFieldGeneric[10](Pool.fee_growth_global_a: u128)
292516CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
292617ImmBorrowFieldGeneric[11](Pool.fee_growth_global_b: u128)
292819CopyLoc[3](loc0: Option<Tick>)
292920CopyLoc[4](loc1: Option<Tick>)
293021Call tick::get_fee_in_range(I32, u128, u128, Option<Tick>, Option<Tick>): u128 * u128
293122CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
293223ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
293425CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
293526ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
293627Call rewarder::rewards_growth_global(&RewarderManager): vector<u128>
293728CopyLoc[3](loc0: Option<Tick>)
293829CopyLoc[4](loc1: Option<Tick>)
293930Call tick::get_rewards_in_range(I32, vector<u128>, Option<Tick>, Option<Tick>): vector<u128>
294031CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
294132ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
294334CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
294435ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
294536Call rewarder::points_growth_global(&RewarderManager): u128
294637CopyLoc[3](loc0: Option<Tick>)
294738CopyLoc[4](loc1: Option<Tick>)
294839Call tick::get_points_in_range(I32, u128, Option<Tick>, Option<Tick>): u128
294940CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
295041ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
295243MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
295344ImmBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
295546MoveLoc[3](loc0: Option<Tick>)
295647MoveLoc[4](loc1: Option<Tick>)
295748Call tick::get_magma_distribution_growth_in_range(I32, u128, Option<Tick>, Option<Tick>): u128
2961public get_liquidity_from_amount(Arg0: I32, Arg1: I32, Arg2: I32, Arg3: u128, Arg4: u64, Arg5: bool): u128 * u64 * u64 {
29760MoveLoc[5](Arg5: bool)
29792CopyLoc[2](Arg2: I32)
29803CopyLoc[0](Arg0: I32)
29814Call i32::lt(I32, I32): bool
29846MoveLoc[0](Arg0: I32)
29857Call tick_math::get_sqrt_price_at_tick(I32): u128
29868MoveLoc[1](Arg1: I32)
29879Call tick_math::get_sqrt_price_at_tick(I32): u128
298810CopyLoc[4](Arg4: u64)
299012Call clmm_math::get_liquidity_from_a(u128, u128, u64, bool): u128
299113MoveLoc[4](Arg4: u64)
299315StLoc[8](loc2: u64)
299416StLoc[7](loc1: u64)
299517StLoc[6](loc0: u128)
299819MoveLoc[2](Arg2: I32)
299920CopyLoc[1](Arg1: I32)
300021Call i32::lt(I32, I32): bool
300524LdConst[19](u64: 19)
300826CopyLoc[3](Arg3: u128)
300927MoveLoc[1](Arg1: I32)
301028Call tick_math::get_sqrt_price_at_tick(I32): u128
301129CopyLoc[4](Arg4: u64)
301331Call clmm_math::get_liquidity_from_a(u128, u128, u64, bool): u128
301432StLoc[17](loc11: u128)
301533MoveLoc[3](Arg3: u128)
301634MoveLoc[0](Arg0: I32)
301735Call tick_math::get_sqrt_price_at_tick(I32): u128
301836CopyLoc[17](loc11: u128)
302038Call clmm_math::get_delta_b(u128, u128, u128, bool): u64
302139StLoc[16](loc10: u64)
302240MoveLoc[17](loc11: u128)
302341MoveLoc[4](Arg4: u64)
302442MoveLoc[16](loc10: u64)
302543StLoc[8](loc2: u64)
302644StLoc[7](loc1: u64)
302745StLoc[6](loc0: u128)
302946MoveLoc[6](loc0: u128)
303047MoveLoc[7](loc1: u64)
303148MoveLoc[8](loc2: u64)
303249StLoc[14](loc8: u64)
303350StLoc[13](loc7: u64)
303451StLoc[12](loc6: u128)
303753CopyLoc[2](Arg2: I32)
303854CopyLoc[1](Arg1: I32)
303955Call i32::gte(I32, I32): bool
304257MoveLoc[0](Arg0: I32)
304358Call tick_math::get_sqrt_price_at_tick(I32): u128
304459MoveLoc[1](Arg1: I32)
304560Call tick_math::get_sqrt_price_at_tick(I32): u128
304661CopyLoc[4](Arg4: u64)
304863Call clmm_math::get_liquidity_from_b(u128, u128, u64, bool): u128
305065MoveLoc[4](Arg4: u64)
305166StLoc[11](loc5: u64)
305267StLoc[10](loc4: u64)
305368StLoc[9](loc3: u128)
305670MoveLoc[2](Arg2: I32)
305771CopyLoc[0](Arg0: I32)
305872Call i32::gte(I32, I32): bool
306375LdConst[19](u64: 19)
306677MoveLoc[0](Arg0: I32)
306778Call tick_math::get_sqrt_price_at_tick(I32): u128
306879CopyLoc[3](Arg3: u128)
306980CopyLoc[4](Arg4: u64)
307182Call clmm_math::get_liquidity_from_b(u128, u128, u64, bool): u128
307283StLoc[18](loc12: u128)
307384MoveLoc[3](Arg3: u128)
307485MoveLoc[1](Arg1: I32)
307586Call tick_math::get_sqrt_price_at_tick(I32): u128
307687CopyLoc[18](loc12: u128)
307889Call clmm_math::get_delta_a(u128, u128, u128, bool): u64
307990StLoc[15](loc9: u64)
308091MoveLoc[18](loc12: u128)
308192MoveLoc[15](loc9: u64)
308293MoveLoc[4](Arg4: u64)
308394StLoc[11](loc5: u64)
308495StLoc[10](loc4: u64)
308596StLoc[9](loc3: u128)
308797MoveLoc[9](loc3: u128)
308898MoveLoc[10](loc4: u64)
308999MoveLoc[11](loc5: u64)
3090100StLoc[14](loc8: u64)
3091101StLoc[13](loc7: u64)
3092102StLoc[12](loc6: u128)
3094103MoveLoc[12](loc6: u128)
3095104MoveLoc[13](loc7: u64)
3096105MoveLoc[14](loc8: u64)
3100public get_points_in_tick_range<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: I32, Arg2: I32): u128 {
31020CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
31031ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
31053CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
31064ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
31075Call rewarder::points_growth_global(&RewarderManager): u128
31086CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
31097ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
31108MoveLoc[1](Arg1: I32)
31119Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
311210MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
311311ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
311412MoveLoc[2](Arg2: I32)
311513Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
311614Call tick::get_points_in_range(I32, u128, Option<Tick>, Option<Tick>): u128
3120public get_position_amounts<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: ID): u64 * u64 {
3121L2: loc0: &PositionInfo
31230CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
31241ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
31252MoveLoc[1](Arg1: ID)
31263Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
31274StLoc[2](loc0: &PositionInfo)
31285CopyLoc[2](loc0: &PositionInfo)
31296Call position::info_tick_range(&PositionInfo): I32 * I32
31307CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
31318ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
313310MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
313411ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
313613MoveLoc[2](loc0: &PositionInfo)
313714Call position::info_liquidity(&PositionInfo): u128
313916Call get_amount_by_liquidity(I32, I32, I32, u128, u128, bool): u64 * u64
3143public get_position_fee<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: ID): u64 * u64 {
31450MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
31461ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
31472MoveLoc[1](Arg1: ID)
31483Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
31494Call position::info_fee_owned(&PositionInfo): u64 * u64
3153public get_position_points<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: ID): u128 {
31550MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
31561ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
31572MoveLoc[1](Arg1: ID)
31583Call position::borrow_position_info(&PositionManager, ID): &PositionInfo
31594Call position::info_points_owned(&PositionInfo): u128
3163public get_position_reward<Ty0, Ty1, Ty2>(Arg0: &Pool<Ty0, Ty1>, Arg1: ID): u64 {
3164L2: loc0: Option<u64>
3165L3: loc1: vector<u64>
31670CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
31681ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
31692Call rewarder::rewarder_index<Ty2>(&RewarderManager): Option<u64>
31703StLoc[2](loc0: Option<u64>)
31714ImmBorrowLoc[2](loc0: Option<u64>)
31725Call option::is_some<u64>(&Option<u64>): bool
31778MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
317910LdConst[17](u64: 17)
318212MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
318313ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
318414MoveLoc[1](Arg1: ID)
318515Call position::rewards_amount_owned(&PositionManager, ID): vector<u64>
318616StLoc[3](loc1: vector<u64>)
318717ImmBorrowLoc[3](loc1: vector<u64>)
318818MutBorrowLoc[2](loc0: Option<u64>)
318919Call option::extract<u64>(&mut Option<u64>): u64
3195public get_position_rewards<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: ID): vector<u64> {
31970MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
31981ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
31992MoveLoc[1](Arg1: ID)
32003Call position::rewards_amount_owned(&PositionManager, ID): vector<u64>
3204public get_rewards_in_tick_range<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: I32, Arg2: I32): vector<u128> {
32060CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
32071ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
32093CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
32104ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
32115Call rewarder::rewards_growth_global(&RewarderManager): vector<u128>
32126CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
32137ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
32148MoveLoc[1](Arg1: I32)
32159Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
321610MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
321711ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
321812MoveLoc[2](Arg2: I32)
321913Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
322014Call tick::get_rewards_in_range(I32, vector<u128>, Option<Tick>, Option<Tick>): vector<u128>
3224init(Arg0: POOL, Arg1: &mut TxContext) {
32260MoveLoc[0](Arg0: POOL)
32271CopyLoc[1](Arg1: &mut TxContext)
32282Call package::claim<POOL>(POOL, &mut TxContext): Publisher
32293MoveLoc[1](Arg1: &mut TxContext)
32315Call tx_context::sender(&TxContext): address
32326Call transfer::public_transfer<Publisher>(Publisher, address)
3236public initialize_rewarder<Ty0, Ty1, Ty2>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut TxContext) {
32380CopyLoc[0](Arg0: &GlobalConfig)
32391Call config::checked_package_version(&GlobalConfig)
32402CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
32413ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
32488MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
325010MoveLoc[2](Arg2: &mut TxContext)
325212MoveLoc[0](Arg0: &GlobalConfig)
325414LdConst[13](u64: 13)
325716MoveLoc[0](Arg0: &GlobalConfig)
325817MoveLoc[2](Arg2: &mut TxContext)
326019Call tx_context::sender(&TxContext): address
326120Call config::check_rewarder_manager_role(&GlobalConfig, address)
326221CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
326322MutBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
326423Call rewarder::add_rewarder<Ty2>(&mut RewarderManager)
326524MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
326726Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
326827Call type_name::get<Ty2>(): TypeName
326928Pack[17](AddRewarderEvent)
327029Call event::emit<AddRewarderEvent>(AddRewarderEvent)
3274public is_pause<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): bool {
32760MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
32771ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
3282public pause<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut TxContext) {
32840CopyLoc[0](Arg0: &GlobalConfig)
32851Call config::checked_package_version(&GlobalConfig)
32862MoveLoc[0](Arg0: &GlobalConfig)
32873MoveLoc[2](Arg2: &mut TxContext)
32895Call tx_context::sender(&TxContext): address
32906Call config::check_pool_manager_role(&GlobalConfig, address)
32917CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
32928ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
329913MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
330115LdU64(13906838937462112255)
330518MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
330619MutBorrowFieldGeneric[2](Pool.is_pause: bool)
3311public position_manager<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): &PositionManager {
33130MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
33141ImmBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
3318public protocol_fee<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u64 * u64 {
33200CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
33211ImmBorrowFieldGeneric[20](Pool.fee_protocol_coin_a: u64)
33233MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
33244ImmBorrowFieldGeneric[21](Pool.fee_protocol_coin_b: u64)
3329public unstaked_liquidity_fee_rate<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u64 {
33310MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
33321ImmBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
3337public fees_amount<Ty0, Ty1>(Arg0: &FlashSwapReceipt<Ty0, Ty1>): u64 * u64 * u64 * u64 {
33390CopyLoc[0](Arg0: &FlashSwapReceipt<Ty0, Ty1>)
33401ImmBorrowFieldGeneric[22](FlashSwapReceipt.fee_amount: u64)
33423CopyLoc[0](Arg0: &FlashSwapReceipt<Ty0, Ty1>)
33434ImmBorrowFieldGeneric[23](FlashSwapReceipt.ref_fee_amount: u64)
33456CopyLoc[0](Arg0: &FlashSwapReceipt<Ty0, Ty1>)
33467ImmBorrowFieldGeneric[24](FlashSwapReceipt.protocol_fee_amount: u64)
33489MoveLoc[0](Arg0: &FlashSwapReceipt<Ty0, Ty1>)
334910ImmBorrowFieldGeneric[25](FlashSwapReceipt.gauge_fee_amount: u64)
3354public remove_liquidity<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut Position, Arg3: u128, Arg4: &Clock): Balance<Ty0> * Balance<Ty1> {
3362L12: loc7: vector<u128>
33660MoveLoc[0](Arg0: &GlobalConfig)
33671Call config::checked_package_version(&GlobalConfig)
33682CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
33693ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
33768MoveLoc[2](Arg2: &mut Position)
337810MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
338012MoveLoc[4](Arg4: &Clock)
338214LdConst[13](u64: 13)
338516CopyLoc[3](Arg3: u128)
339221MoveLoc[2](Arg2: &mut Position)
339423MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
339625MoveLoc[4](Arg4: &Clock)
340129CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
340230MutBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
340331CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
340432ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
340634MoveLoc[4](Arg4: &Clock)
340735Call clock::timestamp_ms(&Clock): u64
341038Call rewarder::settle(&mut RewarderManager, u128, u64)
341139CopyLoc[2](Arg2: &mut Position)
341341Call position::tick_range(&Position): I32 * I32
341442StLoc[14](loc9: I32)
341543StLoc[13](loc8: I32)
341644CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
341846CopyLoc[13](loc8: I32)
341947CopyLoc[14](loc9: I32)
342048Call get_all_growths_in_tick_range<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32, I32): u128 * u128 * vector<u128> * u128 * u128
342149StLoc[10](loc5: u128)
342250StLoc[11](loc6: u128)
342351StLoc[12](loc7: vector<u128>)
342452StLoc[9](loc4: u128)
342553StLoc[8](loc3: u128)
342654CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
342755MutBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
342856CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
342957ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
343159CopyLoc[13](loc8: I32)
343260CopyLoc[14](loc9: I32)
343361CopyLoc[3](Arg3: u128)
343462CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
343563ImmBorrowFieldGeneric[10](Pool.fee_growth_global_a: u128)
343765CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
343866ImmBorrowFieldGeneric[11](Pool.fee_growth_global_b: u128)
344068CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
344169ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
344270Call rewarder::points_growth_global(&RewarderManager): u128
344371CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
344472ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
344573Call rewarder::rewards_growth_global(&RewarderManager): vector<u128>
344674CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
344775ImmBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
344977Call tick::decrease_liquidity(&mut TickManager, I32, I32, I32, u128, u128, u128, u128, vector<u128>, u128)
345078CopyLoc[13](loc8: I32)
345179CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
345280ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
345482Call i32::lte(I32, I32): bool
345784CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
345885ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
346087CopyLoc[14](loc9: I32)
346188Call i32::lt(I32, I32): bool
346289StLoc[5](loc0: bool)
346692StLoc[5](loc0: bool)
346893MoveLoc[5](loc0: bool)
347195CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
347296ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
347498CopyLoc[3](Arg3: u128)
3476100CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3477101MutBorrowFieldGeneric[3](Pool.liquidity: u128)
3480103CopyLoc[13](loc8: I32)
3481104CopyLoc[14](loc9: I32)
3482105CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3483106ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
3485108CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3486109ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
3488111CopyLoc[3](Arg3: u128)
3490113Call get_amount_by_liquidity(I32, I32, I32, u128, u128, bool): u64 * u64
3491114StLoc[7](loc2: u64)
3492115StLoc[6](loc1: u64)
3493116CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3495118Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
3496119CopyLoc[2](Arg2: &mut Position)
3498121Call object::id<Position>(&Position): ID
3499122MoveLoc[13](loc8: I32)
3500123MoveLoc[14](loc9: I32)
3501124CopyLoc[3](Arg3: u128)
3502125CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3503126MutBorrowFieldGeneric[1](Pool.position_manager: PositionManager)
3504127MoveLoc[2](Arg2: &mut Position)
3505128MoveLoc[3](Arg3: u128)
3506129MoveLoc[8](loc3: u128)
3507130MoveLoc[9](loc4: u128)
3508131MoveLoc[11](loc6: u128)
3509132MoveLoc[12](loc7: vector<u128>)
3510133MoveLoc[10](loc5: u128)
3511134Call position::decrease_liquidity(&mut PositionManager, &mut Position, u128, u128, u128, u128, vector<u128>, u128): u128
3512135CopyLoc[6](loc1: u64)
3513136CopyLoc[7](loc2: u64)
3514137Pack[11](RemoveLiquidityEvent)
3515138Call event::emit<RemoveLiquidityEvent>(RemoveLiquidityEvent)
3516139CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3517140MutBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
3518141MoveLoc[6](loc1: u64)
3519142Call balance::split<Ty0>(&mut Balance<Ty0>, u64): Balance<Ty0>
3520143MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3521144MutBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
3522145MoveLoc[7](loc2: u64)
3523146Call balance::split<Ty1>(&mut Balance<Ty1>, u64): Balance<Ty1>
3527public repay_add_liquidity<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: Balance<Ty0>, Arg3: Balance<Ty1>, Arg4: AddLiquidityReceipt<Ty0, Ty1>) {
35320MoveLoc[0](Arg0: &GlobalConfig)
35331Call config::checked_package_version(&GlobalConfig)
35342MoveLoc[4](Arg4: AddLiquidityReceipt<Ty0, Ty1>)
35353UnpackGeneric[1](AddLiquidityReceipt<Ty0, Ty1>)
35397ImmBorrowLoc[2](Arg2: Balance<Ty0>)
35408Call balance::value<Ty0>(&Balance<Ty0>): u64
35419MoveLoc[5](loc0: u64)
354713MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
355217ImmBorrowLoc[3](Arg3: Balance<Ty1>)
355318Call balance::value<Ty1>(&Balance<Ty1>): u64
355419MoveLoc[6](loc1: u64)
356023MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
356527CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
356729Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
356830MoveLoc[7](loc2: ID)
357434MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
357636LdConst[12](u64: 12)
357938CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
358039MutBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
358140MoveLoc[2](Arg2: Balance<Ty0>)
358241Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
358443MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
358544MutBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
358645MoveLoc[3](Arg3: Balance<Ty1>)
358746Call balance::join<Ty1>(&mut Balance<Ty1>, Balance<Ty1>): u64
3592public repay_flash_swap<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: Balance<Ty0>, Arg3: Balance<Ty1>, Arg4: FlashSwapReceipt<Ty0, Ty1>) {
35980MoveLoc[0](Arg0: &GlobalConfig)
35991Call config::checked_package_version(&GlobalConfig)
36002CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
36013ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
36088MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
361010LdConst[13](u64: 13)
361312MoveLoc[4](Arg4: FlashSwapReceipt<Ty0, Ty1>)
361413UnpackGeneric[2](FlashSwapReceipt<Ty0, Ty1>)
361615StLoc[8](loc3: u64)
361918StLoc[6](loc1: u64)
362120StLoc[5](loc0: bool)
362322CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
362524Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
362625MoveLoc[7](loc2: ID)
363229MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
363431LdConst[14](u64: 14)
363733MoveLoc[8](loc3: u64)
364438MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
364640LdConst[14](u64: 14)
364942MoveLoc[5](loc0: bool)
365244ImmBorrowLoc[2](Arg2: Balance<Ty0>)
365345Call balance::value<Ty0>(&Balance<Ty0>): u64
365446MoveLoc[6](loc1: u64)
366050MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
366554MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
366655MutBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
366756MoveLoc[2](Arg2: Balance<Ty0>)
366857Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
367059MoveLoc[3](Arg3: Balance<Ty1>)
367160Call balance::destroy_zero<Ty1>(Balance<Ty1>)
367462ImmBorrowLoc[3](Arg3: Balance<Ty1>)
367563Call balance::value<Ty1>(&Balance<Ty1>): u64
367664MoveLoc[6](loc1: u64)
368268MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
368772MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
368873MutBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
368974MoveLoc[3](Arg3: Balance<Ty1>)
369075Call balance::join<Ty1>(&mut Balance<Ty1>, Balance<Ty1>): u64
369277MoveLoc[2](Arg2: Balance<Ty0>)
369378Call balance::destroy_zero<Ty0>(Balance<Ty0>)
3698public repay_flash_swap_with_partner<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut Partner, Arg3: Balance<Ty0>, Arg4: Balance<Ty1>, Arg5: FlashSwapReceipt<Ty0, Ty1>) {
37050MoveLoc[0](Arg0: &GlobalConfig)
37061Call config::checked_package_version(&GlobalConfig)
37072CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
37083ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
37158MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
371710MoveLoc[2](Arg2: &mut Partner)
371912LdConst[13](u64: 13)
372214MoveLoc[5](Arg5: FlashSwapReceipt<Ty0, Ty1>)
372315UnpackGeneric[2](FlashSwapReceipt<Ty0, Ty1>)
372517StLoc[10](loc4: u64)
372820StLoc[8](loc2: u64)
373022StLoc[6](loc0: bool)
373224CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
373426Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
373527MoveLoc[9](loc3: ID)
374131MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
374333MoveLoc[2](Arg2: &mut Partner)
374535LdConst[14](u64: 14)
374837CopyLoc[2](Arg2: &mut Partner)
375039Call object::id<Partner>(&Partner): ID
375140MoveLoc[7](loc1: ID)
375744MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
375946MoveLoc[2](Arg2: &mut Partner)
376148LdConst[14](u64: 14)
376450MoveLoc[6](loc0: bool)
376752ImmBorrowLoc[3](Arg3: Balance<Ty0>)
376853Call balance::value<Ty0>(&Balance<Ty0>): u64
376954MoveLoc[8](loc2: u64)
377558MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
377760MoveLoc[2](Arg2: &mut Partner)
378264CopyLoc[10](loc4: u64)
378768MoveLoc[2](Arg2: &mut Partner)
378869MutBorrowLoc[3](Arg3: Balance<Ty0>)
378970MoveLoc[10](loc4: u64)
379071Call balance::split<Ty0>(&mut Balance<Ty0>, u64): Balance<Ty0>
379172Call partner::receive_ref_fee<Ty0>(&mut Partner, Balance<Ty0>)
379474MoveLoc[2](Arg2: &mut Partner)
379776MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
379877MutBorrowFieldGeneric[15](Pool.coin_a: Balance<Ty0>)
379978MoveLoc[3](Arg3: Balance<Ty0>)
380079Call balance::join<Ty0>(&mut Balance<Ty0>, Balance<Ty0>): u64
380281MoveLoc[4](Arg4: Balance<Ty1>)
380382Call balance::destroy_zero<Ty1>(Balance<Ty1>)
380684ImmBorrowLoc[4](Arg4: Balance<Ty1>)
380785Call balance::value<Ty1>(&Balance<Ty1>): u64
380886MoveLoc[8](loc2: u64)
381490MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
381692MoveLoc[2](Arg2: &mut Partner)
382196CopyLoc[10](loc4: u64)
3826100MoveLoc[2](Arg2: &mut Partner)
3827101MutBorrowLoc[4](Arg4: Balance<Ty1>)
3828102MoveLoc[10](loc4: u64)
3829103Call balance::split<Ty1>(&mut Balance<Ty1>, u64): Balance<Ty1>
3830104Call partner::receive_ref_fee<Ty1>(&mut Partner, Balance<Ty1>)
3833106MoveLoc[2](Arg2: &mut Partner)
3836108MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
3837109MutBorrowFieldGeneric[16](Pool.coin_b: Balance<Ty1>)
3838110MoveLoc[4](Arg4: Balance<Ty1>)
3839111Call balance::join<Ty1>(&mut Balance<Ty1>, Balance<Ty1>): u64
3841113MoveLoc[3](Arg3: Balance<Ty0>)
3842114Call balance::destroy_zero<Ty0>(Balance<Ty0>)
3847public rewarder_manager<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): &RewarderManager {
38490MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
38501ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
3854public set_display<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &Publisher, Arg2: String, Arg3: String, Arg4: String, Arg5: String, Arg6: String, Arg7: String, Arg8: &mut TxContext) {
3855L9: loc0: Display<Pool<Ty0, Ty1>>
3856L10: loc1: vector<String>
3857L11: loc2: vector<String>
38590MoveLoc[0](Arg0: &GlobalConfig)
38601Call config::checked_package_version(&GlobalConfig)
38623StLoc[10](loc1: vector<String>)
38634MutBorrowLoc[10](loc1: vector<String>)
38645LdConst[26](vector<u8>: "nam..)
38656Call string::utf8(vector<u8>): String
38678MutBorrowLoc[10](loc1: vector<String>)
38689LdConst[27](vector<u8>: "coi..)
386910Call string::utf8(vector<u8>): String
387112MutBorrowLoc[10](loc1: vector<String>)
387213LdConst[28](vector<u8>: "coi..)
387314Call string::utf8(vector<u8>): String
387516MutBorrowLoc[10](loc1: vector<String>)
387617LdConst[29](vector<u8>: "lin..)
387718Call string::utf8(vector<u8>): String
387920MutBorrowLoc[10](loc1: vector<String>)
388021LdConst[30](vector<u8>: "ima..)
388122Call string::utf8(vector<u8>): String
388324MutBorrowLoc[10](loc1: vector<String>)
388425LdConst[31](vector<u8>: "des..)
388526Call string::utf8(vector<u8>): String
388728MutBorrowLoc[10](loc1: vector<String>)
388829LdConst[32](vector<u8>: "pro..)
388930Call string::utf8(vector<u8>): String
389132MutBorrowLoc[10](loc1: vector<String>)
389233LdConst[33](vector<u8>: "cre..)
389334Call string::utf8(vector<u8>): String
389637StLoc[11](loc2: vector<String>)
389738MutBorrowLoc[11](loc2: vector<String>)
389839MoveLoc[2](Arg2: String)
390041MutBorrowLoc[11](loc2: vector<String>)
390142Call type_name::get<Ty0>(): TypeName
390243Call type_name::into_string(TypeName): String
390344Call string::from_ascii(String): String
390546MutBorrowLoc[11](loc2: vector<String>)
390647Call type_name::get<Ty1>(): TypeName
390748Call type_name::into_string(TypeName): String
390849Call string::from_ascii(String): String
391051MutBorrowLoc[11](loc2: vector<String>)
391152MoveLoc[5](Arg5: String)
391354MutBorrowLoc[11](loc2: vector<String>)
391455MoveLoc[4](Arg4: String)
391657MutBorrowLoc[11](loc2: vector<String>)
391758MoveLoc[3](Arg3: String)
391960MutBorrowLoc[11](loc2: vector<String>)
392061MoveLoc[6](Arg6: String)
392263MutBorrowLoc[11](loc2: vector<String>)
392364MoveLoc[7](Arg7: String)
392566MoveLoc[1](Arg1: &Publisher)
392667MoveLoc[10](loc1: vector<String>)
392768MoveLoc[11](loc2: vector<String>)
392869CopyLoc[8](Arg8: &mut TxContext)
392970Call display::new_with_fields<Pool<Ty0, Ty1>>(&Publisher, vector<String>, vector<String>, &mut TxContext): Display<Pool<Ty0, Ty1>>
393071StLoc[9](loc0: Display<Pool<Ty0, Ty1>>)
393172MutBorrowLoc[9](loc0: Display<Pool<Ty0, Ty1>>)
393273Call display::update_version<Pool<Ty0, Ty1>>(&mut Display<Pool<Ty0, Ty1>>)
393374MoveLoc[9](loc0: Display<Pool<Ty0, Ty1>>)
393475MoveLoc[8](Arg8: &mut TxContext)
393677Call tx_context::sender(&TxContext): address
393778Call transfer::public_transfer<Display<Pool<Ty0, Ty1>>>(Display<Pool<Ty0, Ty1>>, address)
3941public step_swap_result_amount_in(Arg0: &SwapStepResult): u64 {
39430MoveLoc[0](Arg0: &SwapStepResult)
39441ImmBorrowField[44](SwapStepResult.amount_in: u64)
3949public step_swap_result_amount_out(Arg0: &SwapStepResult): u64 {
39510MoveLoc[0](Arg0: &SwapStepResult)
39521ImmBorrowField[45](SwapStepResult.amount_out: u64)
3957public step_swap_result_current_liquidity(Arg0: &SwapStepResult): u128 {
39590MoveLoc[0](Arg0: &SwapStepResult)
39601ImmBorrowField[46](SwapStepResult.current_liquidity: u128)
3965public step_swap_result_current_sqrt_price(Arg0: &SwapStepResult): u128 {
39670MoveLoc[0](Arg0: &SwapStepResult)
39681ImmBorrowField[47](SwapStepResult.current_sqrt_price: u128)
3973public step_swap_result_fee_amount(Arg0: &SwapStepResult): u64 {
39750MoveLoc[0](Arg0: &SwapStepResult)
39761ImmBorrowField[48](SwapStepResult.fee_amount: u64)
3981public step_swap_result_remainder_amount(Arg0: &SwapStepResult): u64 {
39830MoveLoc[0](Arg0: &SwapStepResult)
39841ImmBorrowField[49](SwapStepResult.remainder_amount: u64)
3989public step_swap_result_target_sqrt_price(Arg0: &SwapStepResult): u128 {
39910MoveLoc[0](Arg0: &SwapStepResult)
39921ImmBorrowField[50](SwapStepResult.target_sqrt_price: u128)
3997swap_in_pool<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: bool, Arg2: bool, Arg3: u128, Arg4: u64, Arg5: u64, Arg6: u64, Arg7: u64, Arg8: &Clock): SwapResult {
4013L24: loc15: SwapResult
40180CopyLoc[7](Arg7: u64)
40255MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
40277LdConst[16](u64: 16)
40309Call default_swap_result(): SwapResult
403110StLoc[24](loc15: SwapResult)
403211MoveLoc[4](Arg4: u64)
403312StLoc[13](loc4: u64)
403413CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
403514ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
403615CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
403716ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
403918CopyLoc[1](Arg1: bool)
404019Call tick::first_score_for_swap(&TickManager, I32, bool): OptionU64
404120StLoc[14](loc5: OptionU64)
404321CopyLoc[13](loc4: u64)
404825CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
404926ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
405128CopyLoc[3](Arg3: u128)
405330StLoc[9](loc0: bool)
405733StLoc[9](loc0: bool)
405934MoveLoc[9](loc0: bool)
406236ImmBorrowLoc[14](loc5: OptionU64)
406337Call option_u64::is_none(&OptionU64): bool
406639MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
406841LdConst[20](u64: 20)
407143CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
407244ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
407345ImmBorrowLoc[14](loc5: OptionU64)
407446Call option_u64::borrow(&OptionU64): u64
407547CopyLoc[1](Arg1: bool)
407648Call tick::borrow_tick_for_swap(&TickManager, u64, bool): &Tick * OptionU64
407749StLoc[16](loc7: OptionU64)
407850StLoc[25](loc16: &Tick)
407951MoveLoc[16](loc7: OptionU64)
408052StLoc[14](loc5: OptionU64)
408153CopyLoc[25](loc16: &Tick)
408254Call tick::index(&Tick): I32
408355StLoc[26](loc17: I32)
408456MoveLoc[25](loc16: &Tick)
408557Call tick::sqrt_price(&Tick): u128
408658StLoc[27](loc18: u128)
408759CopyLoc[1](Arg1: bool)
409061CopyLoc[3](Arg3: u128)
409162CopyLoc[27](loc18: u128)
409263Call math_u128::max(u128, u128): u128
409364StLoc[10](loc1: u128)
409666CopyLoc[3](Arg3: u128)
409767CopyLoc[27](loc18: u128)
409868Call math_u128::min(u128, u128): u128
409969StLoc[10](loc1: u128)
410170MoveLoc[10](loc1: u128)
410271StLoc[17](loc8: u128)
410372CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
410473ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
410675CopyLoc[17](loc8: u128)
410776CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
410877ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
411079CopyLoc[13](loc4: u64)
411180CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
411281ImmBorrowFieldGeneric[18](Pool.fee_rate: u64)
411483CopyLoc[1](Arg1: bool)
411584CopyLoc[2](Arg2: bool)
411685Call clmm_math::compute_swap_step(u128, u128, u128, u64, u64, bool, bool): u64 * u64 * u128 * u64
411786StLoc[20](loc11: u64)
411887StLoc[21](loc12: u128)
411988StLoc[19](loc10: u64)
412089StLoc[18](loc9: u64)
412190CopyLoc[18](loc9: u64)
412795StLoc[11](loc2: bool)
413097CopyLoc[20](loc11: u64)
4133100StLoc[11](loc2: bool)
4135101MoveLoc[11](loc2: bool)
4138103CopyLoc[2](Arg2: bool)
4141105MoveLoc[13](loc4: u64)
4142106CopyLoc[18](loc9: u64)
4143107Call check_remainer_amount_sub(u64, u64): u64
4144108CopyLoc[20](loc11: u64)
4145109Call check_remainer_amount_sub(u64, u64): u64
4146110StLoc[13](loc4: u64)
4149112MoveLoc[13](loc4: u64)
4150113CopyLoc[19](loc10: u64)
4151114Call check_remainer_amount_sub(u64, u64): u64
4152115StLoc[13](loc4: u64)
4154116CopyLoc[20](loc11: u64)
4155117CopyLoc[7](Arg7: u64)
4156118Call config::protocol_fee_rate_denom(): u64
4157119Call full_math_u64::mul_div_ceil(u64, u64, u64): u64
4158120StLoc[22](loc13: u64)
4159121CopyLoc[20](loc11: u64)
4160122CopyLoc[22](loc13: u64)
4162124StLoc[15](loc6: u64)
4164126StLoc[23](loc14: u64)
4165127CopyLoc[15](loc6: u64)
4170131CopyLoc[15](loc6: u64)
4171132CopyLoc[6](Arg6: u64)
4172133Call config::protocol_fee_rate_denom(): u64
4173134Call full_math_u64::mul_div_ceil(u64, u64, u64): u64
4174135StLoc[23](loc14: u64)
4175136MoveLoc[15](loc6: u64)
4176137CopyLoc[23](loc14: u64)
4178139StLoc[15](loc6: u64)
4180140MutBorrowLoc[24](loc15: SwapResult)
4181141MoveLoc[18](loc9: u64)
4182142MoveLoc[19](loc10: u64)
4183143MoveLoc[20](loc11: u64)
4184144MoveLoc[23](loc14: u64)
4185145MoveLoc[22](loc13: u64)
4187147Call update_swap_result(&mut SwapResult, u64, u64, u64, u64, u64, u64)
4188148CopyLoc[15](loc6: u64)
4193152CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4194153MoveLoc[15](loc6: u64)
4195154CopyLoc[1](Arg1: bool)
4196155Call update_fee_growth_global<Ty0, Ty1>(&mut Pool<Ty0, Ty1>, u64, bool)
4198156CopyLoc[21](loc12: u128)
4199157MoveLoc[27](loc18: u128)
4203160MoveLoc[17](loc8: u128)
4204161CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4205162MutBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
4207164CopyLoc[1](Arg1: bool)
4210166CopyLoc[26](loc17: I32)
4212168Call i32::from(u32): I32
4213169Call i32::sub(I32, I32): I32
4214170StLoc[12](loc3: I32)
4217172CopyLoc[26](loc17: I32)
4218173StLoc[12](loc3: I32)
4220174MoveLoc[12](loc3: I32)
4221175CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4222176MutBorrowFieldGeneric[8](Pool.current_tick_index: I32)
4224178CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4225179MutBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
4226180MoveLoc[26](loc17: I32)
4227181CopyLoc[1](Arg1: bool)
4228182CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4229183ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
4231185CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4232186ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
4234188CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4235189ImmBorrowFieldGeneric[10](Pool.fee_growth_global_a: u128)
4237191CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4238192ImmBorrowFieldGeneric[11](Pool.fee_growth_global_b: u128)
4240194CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4241195ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
4242196Call rewarder::points_growth_global(&RewarderManager): u128
4243197CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4244198ImmBorrowFieldGeneric[6](Pool.rewarder_manager: RewarderManager)
4245199Call rewarder::rewards_growth_global(&RewarderManager): vector<u128>
4246200CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4247201ImmBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
4249203Call tick::cross_by_swap(&mut TickManager, I32, bool, u128, u128, u128, u128, u128, vector<u128>, u128): u128 * u128
4251205CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4252206MutBorrowFieldGeneric[3](Pool.liquidity: u128)
4256209CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4257210ImmBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
4259212CopyLoc[21](loc12: u128)
4263215CopyLoc[21](loc12: u128)
4264216CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4265217MutBorrowFieldGeneric[9](Pool.current_sqrt_price: u128)
4267219MoveLoc[21](loc12: u128)
4268220Call tick_math::get_tick_at_sqrt_price(u128): I32
4269221CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4270222MutBorrowFieldGeneric[8](Pool.current_tick_index: I32)
4274225MoveLoc[1](Arg1: bool)
4277227CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4278228ImmBorrowFieldGeneric[20](Pool.fee_protocol_coin_a: u64)
4280230ImmBorrowLoc[24](loc15: SwapResult)
4281231ImmBorrowField[32](SwapResult.protocol_fee_amount: u64)
4284234CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4285235MutBorrowFieldGeneric[20](Pool.fee_protocol_coin_a: u64)
4287237CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4288238ImmBorrowFieldGeneric[0](Pool.magma_distribution_gauger_fee: PoolFee)
4289239ImmBorrowField[1](PoolFee.coin_a: u64)
4291241ImmBorrowLoc[24](loc15: SwapResult)
4292242ImmBorrowField[30](SwapResult.gauge_fee_amount: u64)
4295245MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4296246MutBorrowFieldGeneric[0](Pool.magma_distribution_gauger_fee: PoolFee)
4297247MutBorrowField[1](PoolFee.coin_a: u64)
4301250CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4302251ImmBorrowFieldGeneric[21](Pool.fee_protocol_coin_b: u64)
4304253ImmBorrowLoc[24](loc15: SwapResult)
4305254ImmBorrowField[32](SwapResult.protocol_fee_amount: u64)
4308257CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4309258MutBorrowFieldGeneric[21](Pool.fee_protocol_coin_b: u64)
4311260CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4312261ImmBorrowFieldGeneric[0](Pool.magma_distribution_gauger_fee: PoolFee)
4313262ImmBorrowField[2](PoolFee.coin_b: u64)
4315264ImmBorrowLoc[24](loc15: SwapResult)
4316265ImmBorrowField[30](SwapResult.gauge_fee_amount: u64)
4319268MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
4320269MutBorrowFieldGeneric[0](Pool.magma_distribution_gauger_fee: PoolFee)
4321270MutBorrowField[2](PoolFee.coin_b: u64)
4324272MoveLoc[24](loc15: SwapResult)
4328public swap_pay_amount<Ty0, Ty1>(Arg0: &FlashSwapReceipt<Ty0, Ty1>): u64 {
43300MoveLoc[0](Arg0: &FlashSwapReceipt<Ty0, Ty1>)
43311ImmBorrowFieldGeneric[26](FlashSwapReceipt.pay_amount: u64)
4336public tick_manager<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): &TickManager {
43380MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
43391ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
4343public tick_spacing<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u32 {
43450MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
43461ImmBorrowFieldGeneric[27](Pool.tick_spacing: u32)
4351public unpause<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut TxContext) {
43530CopyLoc[0](Arg0: &GlobalConfig)
43541Call config::checked_package_version(&GlobalConfig)
43552MoveLoc[0](Arg0: &GlobalConfig)
43563MoveLoc[2](Arg2: &mut TxContext)
43585Call tx_context::sender(&TxContext): address
43596Call config::check_pool_manager_role(&GlobalConfig, address)
43607CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
43618ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
436712MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
436914LdU64(13906840402045960191)
437317MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
437418MutBorrowFieldGeneric[2](Pool.is_pause: bool)
4379public update_unstaked_liquidity_fee_rate<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: u64, Arg3: &mut TxContext) {
43830CopyLoc[0](Arg0: &GlobalConfig)
43841Call config::checked_package_version(&GlobalConfig)
43852CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
43863ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
43938MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
439510MoveLoc[3](Arg3: &mut TxContext)
439712MoveLoc[0](Arg0: &GlobalConfig)
439914LdConst[13](u64: 13)
440216CopyLoc[2](Arg2: u64)
440317Call config::default_unstaked_fee_rate(): u64
440821StLoc[4](loc0: bool)
441123CopyLoc[2](Arg2: u64)
441224Call config::max_unstaked_liquidity_fee_rate(): u64
441426StLoc[4](loc0: bool)
441627MoveLoc[4](loc0: bool)
442130MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
442332MoveLoc[3](Arg3: &mut TxContext)
442534MoveLoc[0](Arg0: &GlobalConfig)
443038CopyLoc[2](Arg2: u64)
443139CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
443240ImmBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
443945MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
444147MoveLoc[3](Arg3: &mut TxContext)
444349MoveLoc[0](Arg0: &GlobalConfig)
444853MoveLoc[0](Arg0: &GlobalConfig)
444954MoveLoc[3](Arg3: &mut TxContext)
445156Call tx_context::sender(&TxContext): address
445257Call config::check_pool_manager_role(&GlobalConfig, address)
445358CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
445459ImmBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
445661StLoc[5](loc1: u64)
445762CopyLoc[2](Arg2: u64)
445863CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
445964MutBorrowFieldGeneric[19](Pool.unstaked_liquidity_fee_rate: u64)
446166MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
446368Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
446469MoveLoc[5](loc1: u64)
446570MoveLoc[2](Arg2: u64)
446671Pack[21](UpdateUnstakedLiquidityFeeRateEvent)
446772Call event::emit<UpdateUnstakedLiquidityFeeRateEvent>(UpdateUnstakedLiquidityFeeRateEvent)
4471public update_fee_rate<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: u64, Arg3: &mut TxContext) {
44740CopyLoc[0](Arg0: &GlobalConfig)
44751Call config::checked_package_version(&GlobalConfig)
44762CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
44773ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
44848MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
448610MoveLoc[3](Arg3: &mut TxContext)
448812MoveLoc[0](Arg0: &GlobalConfig)
449014LdConst[13](u64: 13)
449316CopyLoc[2](Arg2: u64)
449417Call config::max_fee_rate(): u64
449820MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
450022MoveLoc[3](Arg3: &mut TxContext)
450224MoveLoc[0](Arg0: &GlobalConfig)
450728MoveLoc[0](Arg0: &GlobalConfig)
450829MoveLoc[3](Arg3: &mut TxContext)
451031Call tx_context::sender(&TxContext): address
451132Call config::check_pool_manager_role(&GlobalConfig, address)
451233CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
451334ImmBorrowFieldGeneric[18](Pool.fee_rate: u64)
451536StLoc[4](loc0: u64)
451637CopyLoc[2](Arg2: u64)
451738CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
451839MutBorrowFieldGeneric[18](Pool.fee_rate: u64)
452041MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
452243Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
452344MoveLoc[4](loc0: u64)
452445MoveLoc[2](Arg2: u64)
452546Pack[15](UpdateFeeRateEvent)
452647Call event::emit<UpdateFeeRateEvent>(UpdateFeeRateEvent)
4530update_fee_growth_global<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: u64, Arg2: bool) {
45330CopyLoc[1](Arg1: u64)
45395StLoc[3](loc0: bool)
45427CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
45438ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
454712StLoc[3](loc0: bool)
454913MoveLoc[3](loc0: bool)
455215MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
455618MoveLoc[2](Arg2: bool)
455920CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
456021ImmBorrowFieldGeneric[10](Pool.fee_growth_global_a: u128)
456223MoveLoc[1](Arg1: u64)
456627CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
456728ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
457031Call math_u128::wrapping_add(u128, u128): u128
457132MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
457233MutBorrowFieldGeneric[10](Pool.fee_growth_global_a: u128)
457636CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
457737ImmBorrowFieldGeneric[11](Pool.fee_growth_global_b: u128)
457939MoveLoc[1](Arg1: u64)
458343CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
458444ImmBorrowFieldGeneric[3](Pool.liquidity: u128)
458747Call math_u128::wrapping_add(u128, u128): u128
458848MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
458949MutBorrowFieldGeneric[11](Pool.fee_growth_global_b: u128)
4595public update_pool_url<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: String, Arg3: &mut TxContext) {
45970CopyLoc[0](Arg0: &GlobalConfig)
45981Call config::checked_package_version(&GlobalConfig)
45992CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
46003ImmBorrowFieldGeneric[2](Pool.is_pause: bool)
46078MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
460910MoveLoc[3](Arg3: &mut TxContext)
461112MoveLoc[0](Arg0: &GlobalConfig)
461314LdConst[13](u64: 13)
461616MoveLoc[0](Arg0: &GlobalConfig)
461717MoveLoc[3](Arg3: &mut TxContext)
461919Call tx_context::sender(&TxContext): address
462020Call config::check_pool_manager_role(&GlobalConfig, address)
462121MoveLoc[2](Arg2: String)
462222MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
462323MutBorrowFieldGeneric[5](Pool.url: String)
4628update_swap_result(Arg0: &mut SwapResult, Arg1: u64, Arg2: u64, Arg3: u64, Arg4: u64, Arg5: u64, Arg6: u64) {
46300CopyLoc[0](Arg0: &mut SwapResult)
46311ImmBorrowField[24](SwapResult.amount_in: u64)
46333CopyLoc[1](Arg1: u64)
46344Call math_u64::add_check(u64, u64): bool
46397MoveLoc[0](Arg0: &mut SwapResult)
464411CopyLoc[0](Arg0: &mut SwapResult)
464512ImmBorrowField[26](SwapResult.amount_out: u64)
464714CopyLoc[2](Arg2: u64)
464815Call math_u64::add_check(u64, u64): bool
465318MoveLoc[0](Arg0: &mut SwapResult)
465822CopyLoc[0](Arg0: &mut SwapResult)
465923ImmBorrowField[28](SwapResult.fee_amount: u64)
466125CopyLoc[3](Arg3: u64)
466226Call math_u64::add_check(u64, u64): bool
466729MoveLoc[0](Arg0: &mut SwapResult)
467233CopyLoc[0](Arg0: &mut SwapResult)
467334ImmBorrowField[24](SwapResult.amount_in: u64)
467536MoveLoc[1](Arg1: u64)
467738CopyLoc[0](Arg0: &mut SwapResult)
467839MutBorrowField[24](SwapResult.amount_in: u64)
468041CopyLoc[0](Arg0: &mut SwapResult)
468142ImmBorrowField[26](SwapResult.amount_out: u64)
468344MoveLoc[2](Arg2: u64)
468546CopyLoc[0](Arg0: &mut SwapResult)
468647MutBorrowField[26](SwapResult.amount_out: u64)
468849CopyLoc[0](Arg0: &mut SwapResult)
468950ImmBorrowField[28](SwapResult.fee_amount: u64)
469152MoveLoc[3](Arg3: u64)
469354CopyLoc[0](Arg0: &mut SwapResult)
469455MutBorrowField[28](SwapResult.fee_amount: u64)
469657CopyLoc[0](Arg0: &mut SwapResult)
469758ImmBorrowField[32](SwapResult.protocol_fee_amount: u64)
469960MoveLoc[4](Arg4: u64)
470162CopyLoc[0](Arg0: &mut SwapResult)
470263MutBorrowField[32](SwapResult.protocol_fee_amount: u64)
470465CopyLoc[0](Arg0: &mut SwapResult)
470566ImmBorrowField[30](SwapResult.gauge_fee_amount: u64)
470768MoveLoc[6](Arg6: u64)
470970CopyLoc[0](Arg0: &mut SwapResult)
471071MutBorrowField[30](SwapResult.gauge_fee_amount: u64)
471273CopyLoc[0](Arg0: &mut SwapResult)
471374ImmBorrowField[35](SwapResult.ref_fee_amount: u64)
471576MoveLoc[5](Arg5: u64)
471778CopyLoc[0](Arg0: &mut SwapResult)
471879MutBorrowField[35](SwapResult.ref_fee_amount: u64)
472081CopyLoc[0](Arg0: &mut SwapResult)
472182ImmBorrowField[39](SwapResult.steps: u64)
472586MoveLoc[0](Arg0: &mut SwapResult)
472687MutBorrowField[39](SwapResult.steps: u64)
4731public url<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): String {
47330MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
47341ImmBorrowFieldGeneric[5](Pool.url: String)
4739public mark_position_staked<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GaugeCap, Arg2: ID) {
47410LdConst[21](u64: 999)
4745public mark_position_unstaked<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GaugeCap, Arg2: ID) {
47470LdConst[21](u64: 999)
4751calculate_fees<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: u64, Arg2: u128, Arg3: u128, Arg4: u64): u128 * u64 {
47550MoveLoc[1](Arg1: u64)
47583MoveLoc[4](Arg4: u64)
47594Call apply_unstaked_fees(u128, u128, u64): u128 * u128
47605StLoc[5](loc0: u128)
47616StLoc[6](loc1: u128)
47627MoveLoc[5](loc0: u128)
476912LdU64(13906840853017526271)
477214MoveLoc[6](loc1: u128)
477315LdConst[24](u128: 1844..)
477416MoveLoc[2](Arg2: u128)
477517Call full_math_u128::mul_div_floor(u128, u128, u128): u128
4780split_fees(Arg0: u64, Arg1: u128, Arg2: u128, Arg3: u64): u64 * u64 {
47851StLoc[2](Arg2: u128)
47862CopyLoc[0](Arg0: u64)
47884MoveLoc[2](Arg2: u128)
47895MoveLoc[1](Arg1: u128)
47906Call full_math_u128::mul_div_ceil(u128, u128, u128): u128
47917StLoc[5](loc1: u128)
47928MoveLoc[0](Arg0: u64)
479410CopyLoc[5](loc1: u128)
479612MoveLoc[5](loc1: u128)
479713MoveLoc[3](Arg3: u64)
479814Call apply_unstaked_fees(u128, u128, u64): u128 * u128
479915StLoc[4](loc0: u128)
480117MoveLoc[4](loc0: u128)
4806apply_unstaked_fees(Arg0: u128, Arg1: u128, Arg2: u64): u128 * u128 {
48080MoveLoc[2](Arg2: u64)
48091Call config::default_unstaked_fee_rate(): u64
48155LdU64(13906840986161512447)
48187MoveLoc[0](Arg0: u128)
48198MoveLoc[1](Arg1: u128)
4823public update_magma_distribution_growth_global<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GaugeCap, Arg2: &Clock) {
48250LdConst[21](u64: 999)
4829update_magma_distribution_growth_global_internal<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &Clock): u64 {
48350MoveLoc[1](Arg1: &Clock)
48361Call clock::timestamp_ms(&Clock): u64
48405CopyLoc[3](loc1: u64)
48416CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
48427ImmBorrowFieldGeneric[28](Pool.magma_distribution_last_updated: u64)
484510StLoc[2](loc0: u64)
484712StLoc[4](loc2: u64)
484813CopyLoc[2](loc0: u64)
485317CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
485418ImmBorrowFieldGeneric[29](Pool.magma_distribution_reserve: u64)
486023CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
486124ImmBorrowFieldGeneric[30](Pool.magma_distribution_rate: u128)
486326MoveLoc[2](loc0: u64)
486528LdConst[24](u128: 1844..)
486629Call full_math_u128::mul_div_floor(u128, u128, u128): u128
486831StLoc[5](loc3: u64)
486932CopyLoc[5](loc3: u64)
487033CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
487134ImmBorrowFieldGeneric[29](Pool.magma_distribution_reserve: u64)
487638CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
487739ImmBorrowFieldGeneric[29](Pool.magma_distribution_reserve: u64)
487941StLoc[5](loc3: u64)
488142CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
488243ImmBorrowFieldGeneric[29](Pool.magma_distribution_reserve: u64)
488445CopyLoc[5](loc3: u64)
488647CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
488748MutBorrowFieldGeneric[29](Pool.magma_distribution_reserve: u64)
488950CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
489051ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
489656CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
489757ImmBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
489959CopyLoc[5](loc3: u64)
490161LdConst[24](u128: 1844..)
490262CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
490363ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
490565Call full_math_u128::mul_div_floor(u128, u128, u128): u128
490767CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
490868MutBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
491271CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
491372ImmBorrowFieldGeneric[31](Pool.magma_distribution_rollover: u64)
491574CopyLoc[5](loc3: u64)
491776CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
491877MutBorrowFieldGeneric[31](Pool.magma_distribution_rollover: u64)
492179MoveLoc[5](loc3: u64)
492280StLoc[4](loc2: u64)
492481MoveLoc[3](loc1: u64)
492582MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
492683MutBorrowFieldGeneric[28](Pool.magma_distribution_last_updated: u64)
493086MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
493388MoveLoc[4](loc2: u64)
4937check_tick_range(Arg0: I32, Arg1: I32): bool {
49400CopyLoc[0](Arg0: I32)
49411CopyLoc[1](Arg1: I32)
49422Call i32::gte(I32, I32): bool
49465StLoc[2](loc0: bool)
49497MoveLoc[0](Arg0: I32)
49508Call tick_math::min_tick(): I32
49519Call i32::lt(I32, I32): bool
495512StLoc[2](loc0: bool)
495814MoveLoc[1](Arg1: I32)
495915Call tick_math::max_tick(): I32
496016Call i32::gt(I32, I32): bool
496117StLoc[2](loc0: bool)
496318MoveLoc[2](loc0: bool)
4973public get_magma_distribution_growth_inside<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: I32, Arg2: I32, Arg3: u128): u128 {
49750CopyLoc[1](Arg1: I32)
49761CopyLoc[2](Arg2: I32)
49772Call check_tick_range(I32, I32): bool
49825MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
49847LdU64(13906841213794779135)
49879CopyLoc[3](Arg3: u128)
499213CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
499314ImmBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
499516StLoc[3](Arg3: u128)
499717CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
499818ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
500020MoveLoc[3](Arg3: u128)
500121CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
500222MoveLoc[1](Arg1: I32)
500323Call borrow_tick<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32): &Tick
500525Call option::some<Tick>(Tick): Option<Tick>
500626MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
500727MoveLoc[2](Arg2: I32)
500828Call borrow_tick<Ty0, Ty1>(&Pool<Ty0, Ty1>, I32): &Tick
501030Call option::some<Tick>(Tick): Option<Tick>
501131Call tick::get_magma_distribution_growth_in_range(I32, u128, Option<Tick>, Option<Tick>): u128
5015update_magma_distribution_internal<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: I128, Arg2: I32, Arg3: I32, Arg4: &Clock) {
5017L6: loc1: Option<Tick>
5018L7: loc2: Option<Tick>
50210CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
50221ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
50243CopyLoc[2](Arg2: I32)
50254Call i32::gte(I32, I32): bool
50286CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
50297ImmBorrowFieldGeneric[8](Pool.current_tick_index: I32)
50319CopyLoc[3](Arg3: I32)
503210Call i32::lt(I32, I32): bool
503311StLoc[5](loc0: bool)
503714StLoc[5](loc0: bool)
503915MoveLoc[5](loc0: bool)
504217CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
504318MoveLoc[4](Arg4: &Clock)
504419Call update_magma_distribution_growth_global_internal<Ty0, Ty1>(&mut Pool<Ty0, Ty1>, &Clock): u64
504621CopyLoc[1](Arg1: I128)
504722Call i128::is_neg(I128): bool
505024CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
505125ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
505327CopyLoc[1](Arg1: I128)
505428Call i128::abs_u128(I128): u128
506032MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
506234LdU64(13906841291104190463)
506536CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
506637ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
506839Call i128::from(u128): I128
506940CopyLoc[1](Arg1: I128)
507041Call i128::overflowing_add(I128, I128): I128 * bool
507142StLoc[8](loc3: bool)
507344MoveLoc[8](loc3: bool)
507948MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
508150LdU64(13906841299695566871)
508452CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
508553ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
508755Call i128::from(u128): I128
508856CopyLoc[1](Arg1: I128)
508957Call i128::add(I128, I128): I128
509058Call i128::as_u128(I128): u128
509159CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
509260MutBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
509663MoveLoc[4](Arg4: &Clock)
509965CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
510066ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
510167CopyLoc[2](Arg2: I32)
510268Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
510369StLoc[6](loc1: Option<Tick>)
510470CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
510571ImmBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
510672CopyLoc[3](Arg3: I32)
510773Call tick::try_borrow_tick(&TickManager, I32): Option<Tick>
510874StLoc[7](loc2: Option<Tick>)
510975ImmBorrowLoc[6](loc1: Option<Tick>)
511076Call option::is_some<Tick>(&Option<Tick>): bool
511378CopyLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
511479MutBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
511580MoveLoc[2](Arg2: I32)
511681CopyLoc[1](Arg1: I128)
511883Call tick::update_magma_stake(&mut TickManager, I32, I128, bool)
512084ImmBorrowLoc[7](loc2: Option<Tick>)
512185Call option::is_some<Tick>(&Option<Tick>): bool
512487MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
512588MutBorrowFieldGeneric[7](Pool.tick_manager: TickManager)
512689MoveLoc[3](Arg3: I32)
512790MoveLoc[1](Arg1: I128)
512992Call tick::update_magma_stake(&mut TickManager, I32, I128, bool)
513294MoveLoc[0](Arg0: &mut Pool<Ty0, Ty1>)
5138public stake_in_magma_distribution<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GaugeCap, Arg2: u128, Arg3: I32, Arg4: I32, Arg5: &Clock) {
51400LdConst[21](u64: 999)
5144public unstake_from_magma_distribution<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GaugeCap, Arg2: u128, Arg3: I32, Arg4: I32, Arg5: &Clock) {
51460LdConst[21](u64: 999)
5150public get_magma_distribution_last_updated<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u64 {
51520MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
51531ImmBorrowFieldGeneric[28](Pool.magma_distribution_last_updated: u64)
5158public get_magma_distribution_growth_global<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u128 {
51600MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
51611ImmBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
5166public get_magma_distribution_reserve<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u64 {
51680MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
51691ImmBorrowFieldGeneric[29](Pool.magma_distribution_reserve: u64)
5174public get_magma_distribution_staked_liquidity<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u128 {
51760MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
51771ImmBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
5182public get_magma_distribution_gauger_id<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): ID {
51840CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
51851ImmBorrowFieldGeneric[32](Pool.magma_distribution_gauger_id: Option<ID>)
51862Call option::is_some<ID>(&Option<ID>): bool
51915MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
51937LdU64(13906841570277064703)
51969MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
519710ImmBorrowFieldGeneric[32](Pool.magma_distribution_gauger_id: Option<ID>)
519811Call option::borrow<ID>(&Option<ID>): &ID
5203public get_magma_distribution_rollover<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>): u64 {
52050MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
52061ImmBorrowFieldGeneric[31](Pool.magma_distribution_rollover: u64)
5211public init_magma_distribution_gauge<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GaugeCap) {
52130LdConst[21](u64: 999)
5217check_gauge_cap<Ty0, Ty1>(Arg0: &Pool<Ty0, Ty1>, Arg1: &GaugeCap) {
5222L6: loc4: &Option<ID>
52240CopyLoc[1](Arg1: &GaugeCap)
52251Call gauge_cap::get_pool_id(&GaugeCap): ID
52262CopyLoc[0](Arg0: &Pool<Ty0, Ty1>)
52273Call object::id<Pool<Ty0, Ty1>>(&Pool<Ty0, Ty1>): ID
52316MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
52327ImmBorrowFieldGeneric[32](Pool.magma_distribution_gauger_id: Option<ID>)
52338StLoc[6](loc4: &Option<ID>)
52349CopyLoc[6](loc4: &Option<ID>)
523510Call option::is_some<ID>(&Option<ID>): bool
523812MoveLoc[6](loc4: &Option<ID>)
523913Call option::borrow<ID>(&Option<ID>): &ID
524014StLoc[5](loc3: &ID)
524115MoveLoc[1](Arg1: &GaugeCap)
524216Call gauge_cap::get_gauge_id(&GaugeCap): ID
524418MoveLoc[5](loc3: &ID)
524519ImmBorrowLoc[4](loc2: ID)
524721StLoc[3](loc1: bool)
525023MoveLoc[6](loc4: &Option<ID>)
525225MoveLoc[1](Arg1: &GaugeCap)
525528StLoc[3](loc1: bool)
525729MoveLoc[3](loc1: bool)
525830StLoc[2](loc0: bool)
526132MoveLoc[0](Arg0: &Pool<Ty0, Ty1>)
526334MoveLoc[1](Arg1: &GaugeCap)
526637StLoc[2](loc0: bool)
526838MoveLoc[2](loc0: bool)
527341LdU64(13906841634701574143)
5279public sync_magma_distribution_reward<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GaugeCap, Arg2: u128, Arg3: u64, Arg4: u64) {
52810LdConst[21](u64: 999)
5285public collect_magma_distribution_gauger_fees<Ty0, Ty1>(Arg0: &mut Pool<Ty0, Ty1>, Arg1: &GaugeCap): Balance<Ty0> * Balance<Ty1> {
52870LdConst[21](u64: 999)
5291public reset_magma_distribution<Ty0, Ty1>(Arg0: &GlobalConfig, Arg1: &mut Pool<Ty0, Ty1>, Arg2: &mut TxContext) {
52930CopyLoc[0](Arg0: &GlobalConfig)
52941Call config::checked_package_version(&GlobalConfig)
52952MoveLoc[0](Arg0: &GlobalConfig)
52963MoveLoc[2](Arg2: &mut TxContext)
52985Call tx_context::sender(&TxContext): address
52996Call config::check_pool_manager_role(&GlobalConfig, address)
53018CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
53029MutBorrowFieldGeneric[17](Pool.magma_distribution_staked_liquidity: u128)
530512CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
530613MutBorrowFieldGeneric[30](Pool.magma_distribution_rate: u128)
530916CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
531017MutBorrowFieldGeneric[29](Pool.magma_distribution_reserve: u64)
531320CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
531421MutBorrowFieldGeneric[33](Pool.magma_distribution_period_finish: u64)
531724CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
531825MutBorrowFieldGeneric[31](Pool.magma_distribution_rollover: u64)
532128CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
532229MutBorrowFieldGeneric[12](Pool.magma_distribution_growth_global: u128)
532431Call option::none<ID>(): Option<ID>
532532CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
532633MutBorrowFieldGeneric[32](Pool.magma_distribution_gauger_id: Option<ID>)
532936CopyLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
533037MutBorrowFieldGeneric[0](Pool.magma_distribution_gauger_fee: PoolFee)
533138MutBorrowField[1](PoolFee.coin_a: u64)
533441MoveLoc[1](Arg1: &mut Pool<Ty0, Ty1>)
533542MutBorrowFieldGeneric[0](Pool.magma_distribution_gauger_fee: PoolFee)
533643MutBorrowField[2](PoolFee.coin_b: u64)
5364 22 => vector<u8>: "ErrStakedLiquidityOverflow" // interpreted as UTF8 string
5365 23 => vector<u8>: "staked liquidity overflow" // interpreted as UTF8 string
5366 24 => u128: 18446744073709551616
5367 25 => address: 0x0000000000000000000000000000000000000000000000000000000000000000
5368 26 => vector<u8>: "name" // interpreted as UTF8 string
5369 27 => vector<u8>: "coin_a" // interpreted as UTF8 string
5370 28 => vector<u8>: "coin_b" // interpreted as UTF8 string
5371 29 => vector<u8>: "link" // interpreted as UTF8 string
5372 30 => vector<u8>: "image_url" // interpreted as UTF8 string
5373 31 => vector<u8>: "description" // interpreted as UTF8 string
5374 32 => vector<u8>: "project_url" // interpreted as UTF8 string
5375 33 => vector<u8>: "creator" // interpreted as UTF8 string