The explorer is out of sync. The last synced block is 192 hours ago. Current block height: explorer: 2206528 / node: 2330721 / ref: 2330725

Program arcane_amm_exchange_v1_1.aleo

Program ID
arcane_amm_exchange_v1_1.aleo
Owner signature
sign1vs35v4futnzjg5ywrwj2z6leck32yw9c7qvtaylzlxwuhaktd5q53zwsf8ntdg9mwn5y07cfmqpeue5yl6xg8ylecs9t6v5qud397pqm8555plq8qm58hteazn04fgnvceu4hnp7zj3ekzquseymgmanpdnzxhqtsugxlmvxwjmkv6xc8al30jgjgj4cfrs9ks4pt9temfjpz2mx4sc
Times called
1
Similar programs
Mappings
-
Structs
-
Records
-
Functions
-
Transitions
empty() -> field
create_pool_pric_a(address, credits.aleo/credits, u64, arcanetoken_v2_0.aleo/ArcaneToken, u64, u128) -> (arcane_amm_v2_1_1.aleo/PoolAdmin, credits.aleo/credits, arcanetoken_v2_0.aleo/ArcaneToken, arcanetoken_v2_0.aleo/ArcaneToken)
swap_amm_pric_a(address, credits.aleo/credits, u64, u64, u64, field) -> (credits.aleo/credits, arcanetoken_v2_0.aleo/ArcaneToken, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
swap_amm_a_pric(address, arcanetoken_v2_0.aleo/ArcaneToken, u64, u64, u64, field) -> (credits.aleo/credits, arcanetoken_v2_0.aleo/ArcaneToken, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
add_amm_liq_pric_a(address, credits.aleo/credits, u64, arcanetoken_v2_0.aleo/ArcaneToken, u128, field) -> (credits.aleo/credits, arcanetoken_v2_0.aleo/ArcaneToken, arcane_amm_v2_1_1.aleo/LpTokenReceipt)
create_pool_pric_usdt(address, credits.aleo/credits, u64, arc20_usdt.aleo/token, u64, u128) -> (arcane_amm_v2_1_1.aleo/PoolAdmin, credits.aleo/credits, arc20_usdt.aleo/token)
swap_amm_pric_usdt(address, credits.aleo/credits, u64, u64, u64, field) -> (credits.aleo/credits, arc20_usdt.aleo/token, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
swap_amm_usdt_pric(address, arc20_usdt.aleo/token, u128, u64, u64, field) -> (credits.aleo/credits, arc20_usdt.aleo/token, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
add_amm_liq_pric_usdt(address, credits.aleo/credits, u64, arc20_usdt.aleo/token, u128, field) -> (credits.aleo/credits, arc20_usdt.aleo/token, arcane_amm_v2_1_1.aleo/LpTokenReceipt)
create_pool_pric_usdc(address, credits.aleo/credits, u64, arc20_usdc.aleo/token, u64, u128) -> (arcane_amm_v2_1_1.aleo/PoolAdmin, credits.aleo/credits, arc20_usdc.aleo/token)
swap_amm_pric_usdc(address, credits.aleo/credits, u64, u64, u64, field) -> (credits.aleo/credits, arc20_usdc.aleo/token, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
swap_amm_usdc_pric(address, arc20_usdc.aleo/token, u128, u64, u64, field) -> (credits.aleo/credits, arc20_usdc.aleo/token, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
add_amm_liq_pric_usdc(address, credits.aleo/credits, u64, arc20_usdc.aleo/token, u128, field) -> (credits.aleo/credits, arc20_usdc.aleo/token, arcane_amm_v2_1_1.aleo/LpTokenReceipt)
create_pool_usdt_usdc(address, arc20_usdt.aleo/token, u64, arc20_usdc.aleo/token, u64, u128) -> (arcane_amm_v2_1_1.aleo/PoolAdmin, arc20_usdt.aleo/token, arc20_usdc.aleo/token)
swap_amm_usdt_usdc(address, arc20_usdt.aleo/token, u64, u64, u64, field) -> (arc20_usdt.aleo/token, arc20_usdc.aleo/token, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
swap_amm_usdc_usdt(address, arc20_usdc.aleo/token, u128, u64, u64, field) -> (arc20_usdt.aleo/token, arc20_usdc.aleo/token, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
add_amm_liq_usdt_usdc(address, arc20_usdt.aleo/token, u128, arc20_usdc.aleo/token, u128, field) -> (arc20_usdt.aleo/token, arc20_usdc.aleo/token, arcane_amm_v2_1_1.aleo/LpTokenReceipt)
create_pool_usdt_a(address, arc20_usdt.aleo/token, u128, arcanetoken_v2_0.aleo/ArcaneToken, u64, u128) -> (arcane_amm_v2_1_1.aleo/PoolAdmin, arc20_usdt.aleo/token, arcanetoken_v2_0.aleo/ArcaneToken, arcanetoken_v2_0.aleo/ArcaneToken)
swap_amm_usdt_a(address, arc20_usdt.aleo/token, u128, u64, u64, field) -> (arc20_usdt.aleo/token, arcanetoken_v2_0.aleo/ArcaneToken, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
swap_amm_a_usdt(address, arcanetoken_v2_0.aleo/ArcaneToken, u64, u64, u64, field) -> (arc20_usdt.aleo/token, arcanetoken_v2_0.aleo/ArcaneToken, arcane_amm_v2_1_1.aleo/ExtraAmountVoucher)
add_amm_liq_usdt_a(address, arc20_usdt.aleo/token, u128, arcanetoken_v2_0.aleo/ArcaneToken, u128, field) -> (arc20_usdt.aleo/token, arcanetoken_v2_0.aleo/ArcaneToken, arcane_amm_v2_1_1.aleo/LpTokenReceipt)
Program Source Code (Aleo Instruction) Upload Leo source

import arc20_usdc.aleo;
import arcanetoken_v2_0.aleo;
import arc20_usdc_vault_v1.aleo;
import arc20_usdt.aleo;
import arc20_usdt_vault_v1.aleo;
import arcane_access.aleo;
import arcane_amm_v2_1_1.aleo;
import credits.aleo;
import credits_vault_v1.aleo;

program arcane_amm_exchange_v1_1.aleo;

function empty:
    output 0field as field.private;

function create_pool_pric_a:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    input r4 as u64.private;
    input r5 as u128.private;
    call credits_vault_v1.aleo/deposit_private_credits r1 r2 r1.owner into r6 r7 r8;
    cast r2 into r9 as u128;
    cast r4 into r10 as u128;
    call arcane_amm_v2_1_1.aleo/create_pool r0 r6 r9 r3 r10 r5 into r11 r12 r13 r14;
    async create_pool_pric_a r8 r14 into r15;
    output r11 as arcane_amm_v2_1_1.aleo/PoolAdmin.record;
    output r7 as credits.aleo/credits.record;
    output r12 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r13 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r15 as arcane_amm_exchange_v1_1.aleo/create_pool_pric_a.future;
finalize create_pool_pric_a:
    input r0 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r1 as arcane_amm_v2_1_1.aleo/create_pool.future;
    await r0;
    await r1;

function swap_amm_pric_a:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    call credits_vault_v1.aleo/deposit_private_credits r1 r2 r1.owner into r6 r7 r8;
    cast r4 into r9 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm r0 r6 r6.amount r3 r9 r5 into r10 r11 r12 r13;
    async swap_amm_pric_a r8 r13 into r14;
    output r7 as credits.aleo/credits.record;
    output r11 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r12 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r14 as arcane_amm_exchange_v1_1.aleo/swap_amm_pric_a.future;
finalize swap_amm_pric_a:
    input r0 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r1 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    await r0;
    await r1;

function swap_amm_a_pric:
    input r0 as address.private;
    input r1 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    input r2 as u64.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    cast r2 into r6 as u128;
    cast r4 into r7 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm self.caller r1 r6 r3 r7 r5 into r8 r9 r10 r11;
    cast r9.amount into r12 as u64;
    call credits_vault_v1.aleo/withdraw_private_credits r9 r12 r0 into r13 r14 r15;
    async swap_amm_a_pric r11 r15 into r16;
    output r13 as credits.aleo/credits.record;
    output r8 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r10 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r16 as arcane_amm_exchange_v1_1.aleo/swap_amm_a_pric.future;
finalize swap_amm_a_pric:
    input r0 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    input r1 as credits_vault_v1.aleo/withdraw_private_credits.future;
    await r0;
    await r1;

function add_amm_liq_pric_a:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    input r4 as u128.private;
    input r5 as field.private;
    call credits_vault_v1.aleo/deposit_private_credits r1 r2 r1.owner into r6 r7 r8;
    call arcane_amm_v2_1_1.aleo/add_amm_liquidity r0 r6 r6.amount 0u128 r3 r3.amount 0u128 r5 into r9 r10 r11 r12;
    async add_amm_liq_pric_a r8 r12 into r13;
    output r7 as credits.aleo/credits.record;
    output r10 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r11 as arcane_amm_v2_1_1.aleo/LpTokenReceipt.record;
    output r13 as arcane_amm_exchange_v1_1.aleo/add_amm_liq_pric_a.future;
finalize add_amm_liq_pric_a:
    input r0 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r1 as arcane_amm_v2_1_1.aleo/add_amm_liquidity.future;
    await r0;
    await r1;

function create_pool_pric_usdt:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as arc20_usdt.aleo/token.record;
    input r4 as u64.private;
    input r5 as u128.private;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r3 r3.amount r3.owner into r6 r7 r8;
    call credits_vault_v1.aleo/deposit_private_credits r1 r1.microcredits r1.owner into r9 r10 r11;
    cast r2 into r12 as u128;
    cast r4 into r13 as u128;
    call arcane_amm_v2_1_1.aleo/create_pool r0 r9 r12 r6 r13 r5 into r14 r15 r16 r17;
    cast r15.amount into r18 as u64;
    call credits_vault_v1.aleo/withdraw_private_credits r15 r18 r1.owner into r19 r20 r21;
    call arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt r16 r16.amount r3.owner into r22 r23 r24;
    async create_pool_pric_usdt r8 r11 r17 r21 r24 into r25;
    output r14 as arcane_amm_v2_1_1.aleo/PoolAdmin.record;
    output r19 as credits.aleo/credits.record;
    output r22 as arc20_usdt.aleo/token.record;
    output r25 as arcane_amm_exchange_v1_1.aleo/create_pool_pric_usdt.future;
finalize create_pool_pric_usdt:
    input r0 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r1 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r2 as arcane_amm_v2_1_1.aleo/create_pool.future;
    input r3 as credits_vault_v1.aleo/withdraw_private_credits.future;
    input r4 as arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt.future;
    await r0;
    await r1;
    await r2;
    await r3;
    await r4;

function swap_amm_pric_usdt:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    call credits_vault_v1.aleo/deposit_private_credits r1 r1.microcredits r1.owner into r6 r7 r8;
    cast r2 into r9 as u128;
    cast r4 into r10 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm self.caller r6 r9 r3 r10 r5 into r11 r12 r13 r14;
    cast r11.amount into r15 as u64;
    call credits_vault_v1.aleo/withdraw_private_credits r11 r15 r0 into r16 r17 r18;
    call arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt r12 r12.amount r0 into r19 r20 r21;
    async swap_amm_pric_usdt r8 r14 r18 r21 into r22;
    output r16 as credits.aleo/credits.record;
    output r19 as arc20_usdt.aleo/token.record;
    output r13 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r22 as arcane_amm_exchange_v1_1.aleo/swap_amm_pric_usdt.future;
finalize swap_amm_pric_usdt:
    input r0 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r1 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    input r2 as credits_vault_v1.aleo/withdraw_private_credits.future;
    input r3 as arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt.future;
    await r0;
    await r1;
    await r2;
    await r3;

function swap_amm_usdt_pric:
    input r0 as address.private;
    input r1 as arc20_usdt.aleo/token.record;
    input r2 as u128.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r1 r2 r1.owner into r6 r7 r8;
    cast r2 into r9 as u128;
    cast r4 into r10 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm self.caller r6 r9 r3 r10 r5 into r11 r12 r13 r14;
    cast r12.amount into r15 as u64;
    call credits_vault_v1.aleo/withdraw_private_credits r12 r15 r0 into r16 r17 r18;
    call arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt r11 r11.amount r0 into r19 r20 r21;
    async swap_amm_usdt_pric r8 r14 r18 r21 into r22;
    output r16 as credits.aleo/credits.record;
    output r19 as arc20_usdt.aleo/token.record;
    output r13 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r22 as arcane_amm_exchange_v1_1.aleo/swap_amm_usdt_pric.future;
finalize swap_amm_usdt_pric:
    input r0 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r1 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    input r2 as credits_vault_v1.aleo/withdraw_private_credits.future;
    input r3 as arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt.future;
    await r0;
    await r1;
    await r2;
    await r3;

function add_amm_liq_pric_usdt:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as arc20_usdt.aleo/token.record;
    input r4 as u128.private;
    input r5 as field.private;
    call credits_vault_v1.aleo/deposit_private_credits r1 r2 r1.owner into r6 r7 r8;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r3 r4 r3.owner into r9 r10 r11;
    call arcane_amm_v2_1_1.aleo/add_amm_liquidity r0 r6 r6.amount 0u128 r9 r3.amount 0u128 r5 into r12 r13 r14 r15;
    call arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt r13 r13.amount r0 into r16 r17 r18;
    async add_amm_liq_pric_usdt r8 r11 r15 r18 into r19;
    output r7 as credits.aleo/credits.record;
    output r16 as arc20_usdt.aleo/token.record;
    output r14 as arcane_amm_v2_1_1.aleo/LpTokenReceipt.record;
    output r19 as arcane_amm_exchange_v1_1.aleo/add_amm_liq_pric_usdt.future;
finalize add_amm_liq_pric_usdt:
    input r0 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r1 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r2 as arcane_amm_v2_1_1.aleo/add_amm_liquidity.future;
    input r3 as arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt.future;
    await r0;
    await r1;
    await r2;
    await r3;

function create_pool_pric_usdc:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as arc20_usdc.aleo/token.record;
    input r4 as u64.private;
    input r5 as u128.private;
    call arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc r3 r3.amount r3.owner into r6 r7 r8;
    call credits_vault_v1.aleo/deposit_private_credits r1 r1.microcredits r1.owner into r9 r10 r11;
    cast r2 into r12 as u128;
    cast r4 into r13 as u128;
    call arcane_amm_v2_1_1.aleo/create_pool r0 r9 r12 r6 r13 r5 into r14 r15 r16 r17;
    cast r15.amount into r18 as u64;
    call credits_vault_v1.aleo/withdraw_private_credits r15 r18 r1.owner into r19 r20 r21;
    call arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc r16 r16.amount r3.owner into r22 r23 r24;
    async create_pool_pric_usdc r8 r11 r17 r21 r24 into r25;
    output r14 as arcane_amm_v2_1_1.aleo/PoolAdmin.record;
    output r19 as credits.aleo/credits.record;
    output r22 as arc20_usdc.aleo/token.record;
    output r25 as arcane_amm_exchange_v1_1.aleo/create_pool_pric_usdc.future;
finalize create_pool_pric_usdc:
    input r0 as arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc.future;
    input r1 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r2 as arcane_amm_v2_1_1.aleo/create_pool.future;
    input r3 as credits_vault_v1.aleo/withdraw_private_credits.future;
    input r4 as arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc.future;
    await r0;
    await r1;
    await r2;
    await r3;
    await r4;

function swap_amm_pric_usdc:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    call credits_vault_v1.aleo/deposit_private_credits r1 r1.microcredits r1.owner into r6 r7 r8;
    cast r2 into r9 as u128;
    cast r4 into r10 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm self.caller r6 r9 r3 r10 r5 into r11 r12 r13 r14;
    cast r11.amount into r15 as u64;
    call credits_vault_v1.aleo/withdraw_private_credits r11 r15 r0 into r16 r17 r18;
    call arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc r12 r12.amount r0 into r19 r20 r21;
    async swap_amm_pric_usdc r8 r14 r18 r21 into r22;
    output r16 as credits.aleo/credits.record;
    output r19 as arc20_usdc.aleo/token.record;
    output r13 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r22 as arcane_amm_exchange_v1_1.aleo/swap_amm_pric_usdc.future;
finalize swap_amm_pric_usdc:
    input r0 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r1 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    input r2 as credits_vault_v1.aleo/withdraw_private_credits.future;
    input r3 as arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc.future;
    await r0;
    await r1;
    await r2;
    await r3;

function swap_amm_usdc_pric:
    input r0 as address.private;
    input r1 as arc20_usdc.aleo/token.record;
    input r2 as u128.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    call arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc r1 r2 r1.owner into r6 r7 r8;
    cast r2 into r9 as u128;
    cast r4 into r10 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm self.caller r6 r9 r3 r10 r5 into r11 r12 r13 r14;
    cast r12.amount into r15 as u64;
    call credits_vault_v1.aleo/withdraw_private_credits r12 r15 r0 into r16 r17 r18;
    call arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc r11 r11.amount r0 into r19 r20 r21;
    async swap_amm_usdc_pric r8 r14 r18 r21 into r22;
    output r16 as credits.aleo/credits.record;
    output r19 as arc20_usdc.aleo/token.record;
    output r13 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r22 as arcane_amm_exchange_v1_1.aleo/swap_amm_usdc_pric.future;
finalize swap_amm_usdc_pric:
    input r0 as arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc.future;
    input r1 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    input r2 as credits_vault_v1.aleo/withdraw_private_credits.future;
    input r3 as arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc.future;
    await r0;
    await r1;
    await r2;
    await r3;

function add_amm_liq_pric_usdc:
    input r0 as address.private;
    input r1 as credits.aleo/credits.record;
    input r2 as u64.private;
    input r3 as arc20_usdc.aleo/token.record;
    input r4 as u128.private;
    input r5 as field.private;
    call credits_vault_v1.aleo/deposit_private_credits r1 r2 r1.owner into r6 r7 r8;
    call arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc r3 r4 r3.owner into r9 r10 r11;
    call arcane_amm_v2_1_1.aleo/add_amm_liquidity r0 r6 r6.amount 0u128 r9 r3.amount 0u128 r5 into r12 r13 r14 r15;
    call arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc r13 r13.amount r0 into r16 r17 r18;
    async add_amm_liq_pric_usdc r8 r11 r15 r18 into r19;
    output r7 as credits.aleo/credits.record;
    output r16 as arc20_usdc.aleo/token.record;
    output r14 as arcane_amm_v2_1_1.aleo/LpTokenReceipt.record;
    output r19 as arcane_amm_exchange_v1_1.aleo/add_amm_liq_pric_usdc.future;
finalize add_amm_liq_pric_usdc:
    input r0 as credits_vault_v1.aleo/deposit_private_credits.future;
    input r1 as arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc.future;
    input r2 as arcane_amm_v2_1_1.aleo/add_amm_liquidity.future;
    input r3 as arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc.future;
    await r0;
    await r1;
    await r2;
    await r3;

function create_pool_usdt_usdc:
    input r0 as address.private;
    input r1 as arc20_usdt.aleo/token.record;
    input r2 as u64.private;
    input r3 as arc20_usdc.aleo/token.record;
    input r4 as u64.private;
    input r5 as u128.private;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r1 r1.amount r1.owner into r6 r7 r8;
    call arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc r3 r3.amount r3.owner into r9 r10 r11;
    cast r2 into r12 as u128;
    cast r4 into r13 as u128;
    call arcane_amm_v2_1_1.aleo/create_pool r0 r6 r12 r9 r13 r5 into r14 r15 r16 r17;
    call arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt r15 r15.amount r1.owner into r18 r19 r20;
    call arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc r16 r16.amount r3.owner into r21 r22 r23;
    async create_pool_usdt_usdc r8 r11 r17 r20 r23 into r24;
    output r14 as arcane_amm_v2_1_1.aleo/PoolAdmin.record;
    output r18 as arc20_usdt.aleo/token.record;
    output r21 as arc20_usdc.aleo/token.record;
    output r24 as arcane_amm_exchange_v1_1.aleo/create_pool_usdt_usdc.future;
finalize create_pool_usdt_usdc:
    input r0 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r1 as arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc.future;
    input r2 as arcane_amm_v2_1_1.aleo/create_pool.future;
    input r3 as arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt.future;
    input r4 as arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc.future;
    await r0;
    await r1;
    await r2;
    await r3;
    await r4;

function swap_amm_usdt_usdc:
    input r0 as address.private;
    input r1 as arc20_usdt.aleo/token.record;
    input r2 as u64.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r1 r1.amount r1.owner into r6 r7 r8;
    cast r2 into r9 as u128;
    cast r4 into r10 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm self.caller r6 r9 r3 r10 r5 into r11 r12 r13 r14;
    call arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt r11 r11.amount r0 into r15 r16 r17;
    call arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc r12 r12.amount r0 into r18 r19 r20;
    async swap_amm_usdt_usdc r8 r14 r17 r20 into r21;
    output r15 as arc20_usdt.aleo/token.record;
    output r18 as arc20_usdc.aleo/token.record;
    output r13 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r21 as arcane_amm_exchange_v1_1.aleo/swap_amm_usdt_usdc.future;
finalize swap_amm_usdt_usdc:
    input r0 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r1 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    input r2 as arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt.future;
    input r3 as arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc.future;
    await r0;
    await r1;
    await r2;
    await r3;

function swap_amm_usdc_usdt:
    input r0 as address.private;
    input r1 as arc20_usdc.aleo/token.record;
    input r2 as u128.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    call arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc r1 r2 r1.owner into r6 r7 r8;
    cast r2 into r9 as u128;
    cast r4 into r10 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm self.caller r6 r9 r3 r10 r5 into r11 r12 r13 r14;
    call arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt r12 r12.amount r0 into r15 r16 r17;
    call arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc r11 r11.amount r0 into r18 r19 r20;
    async swap_amm_usdc_usdt r8 r14 r17 r20 into r21;
    output r15 as arc20_usdt.aleo/token.record;
    output r18 as arc20_usdc.aleo/token.record;
    output r13 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r21 as arcane_amm_exchange_v1_1.aleo/swap_amm_usdc_usdt.future;
finalize swap_amm_usdc_usdt:
    input r0 as arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc.future;
    input r1 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    input r2 as arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt.future;
    input r3 as arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc.future;
    await r0;
    await r1;
    await r2;
    await r3;

function add_amm_liq_usdt_usdc:
    input r0 as address.private;
    input r1 as arc20_usdt.aleo/token.record;
    input r2 as u128.private;
    input r3 as arc20_usdc.aleo/token.record;
    input r4 as u128.private;
    input r5 as field.private;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r1 r2 r1.owner into r6 r7 r8;
    call arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc r3 r4 r3.owner into r9 r10 r11;
    call arcane_amm_v2_1_1.aleo/add_amm_liquidity r0 r6 r6.amount 0u128 r9 r3.amount 0u128 r5 into r12 r13 r14 r15;
    call arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc r13 r13.amount r0 into r16 r17 r18;
    async add_amm_liq_usdt_usdc r8 r11 r15 r18 into r19;
    output r7 as arc20_usdt.aleo/token.record;
    output r16 as arc20_usdc.aleo/token.record;
    output r14 as arcane_amm_v2_1_1.aleo/LpTokenReceipt.record;
    output r19 as arcane_amm_exchange_v1_1.aleo/add_amm_liq_usdt_usdc.future;
finalize add_amm_liq_usdt_usdc:
    input r0 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r1 as arc20_usdc_vault_v1.aleo/deposit_private_arc20_usdc.future;
    input r2 as arcane_amm_v2_1_1.aleo/add_amm_liquidity.future;
    input r3 as arc20_usdc_vault_v1.aleo/withdraw_private_arc20_usdc.future;
    await r0;
    await r1;
    await r2;
    await r3;

function create_pool_usdt_a:
    input r0 as address.private;
    input r1 as arc20_usdt.aleo/token.record;
    input r2 as u128.private;
    input r3 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    input r4 as u64.private;
    input r5 as u128.private;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r1 r2 r1.owner into r6 r7 r8;
    cast r2 into r9 as u128;
    cast r4 into r10 as u128;
    call arcane_amm_v2_1_1.aleo/create_pool r0 r6 r9 r3 r10 r5 into r11 r12 r13 r14;
    async create_pool_usdt_a r8 r14 into r15;
    output r11 as arcane_amm_v2_1_1.aleo/PoolAdmin.record;
    output r7 as arc20_usdt.aleo/token.record;
    output r12 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r13 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r15 as arcane_amm_exchange_v1_1.aleo/create_pool_usdt_a.future;
finalize create_pool_usdt_a:
    input r0 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r1 as arcane_amm_v2_1_1.aleo/create_pool.future;
    await r0;
    await r1;

function swap_amm_usdt_a:
    input r0 as address.private;
    input r1 as arc20_usdt.aleo/token.record;
    input r2 as u128.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r1 r2 r1.owner into r6 r7 r8;
    cast r4 into r9 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm r0 r6 r6.amount r3 r9 r5 into r10 r11 r12 r13;
    async swap_amm_usdt_a r8 r13 into r14;
    output r7 as arc20_usdt.aleo/token.record;
    output r11 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r12 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r14 as arcane_amm_exchange_v1_1.aleo/swap_amm_usdt_a.future;
finalize swap_amm_usdt_a:
    input r0 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r1 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    await r0;
    await r1;

function swap_amm_a_usdt:
    input r0 as address.private;
    input r1 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    input r2 as u64.private;
    input r3 as u64.private;
    input r4 as u64.private;
    input r5 as field.private;
    cast r2 into r6 as u128;
    cast r4 into r7 as u128;
    call arcane_amm_v2_1_1.aleo/swap_amm self.caller r1 r6 r3 r7 r5 into r8 r9 r10 r11;
    call arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt r9 r9.amount r0 into r12 r13 r14;
    async swap_amm_a_usdt r11 r14 into r15;
    output r12 as arc20_usdt.aleo/token.record;
    output r8 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r10 as arcane_amm_v2_1_1.aleo/ExtraAmountVoucher.record;
    output r15 as arcane_amm_exchange_v1_1.aleo/swap_amm_a_usdt.future;
finalize swap_amm_a_usdt:
    input r0 as arcane_amm_v2_1_1.aleo/swap_amm.future;
    input r1 as arc20_usdt_vault_v1.aleo/withdraw_private_arc20_usdt.future;
    await r0;
    await r1;

function add_amm_liq_usdt_a:
    input r0 as address.private;
    input r1 as arc20_usdt.aleo/token.record;
    input r2 as u128.private;
    input r3 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    input r4 as u128.private;
    input r5 as field.private;
    call arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt r1 r2 r1.owner into r6 r7 r8;
    call arcane_amm_v2_1_1.aleo/add_amm_liquidity r0 r6 r6.amount 0u128 r3 r3.amount 0u128 r5 into r9 r10 r11 r12;
    async add_amm_liq_usdt_a r8 r12 into r13;
    output r7 as arc20_usdt.aleo/token.record;
    output r10 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r11 as arcane_amm_v2_1_1.aleo/LpTokenReceipt.record;
    output r13 as arcane_amm_exchange_v1_1.aleo/add_amm_liq_usdt_a.future;
finalize add_amm_liq_usdt_a:
    input r0 as arc20_usdt_vault_v1.aleo/deposit_private_arc20_usdt.future;
    input r1 as arcane_amm_v2_1_1.aleo/add_amm_liquidity.future;
    await r0;
    await r1;

Block heightTimestampTransition IDFunction callState
1,958,5702024-04-10 09:03:28au18tf40c4lzrqw4u9luyk2j9zdh29rp73fueh9zjxmlr98ee8kkv8snqge92swap_amm_usdt_usdcAccepted
Program has no mappings.
Not implemented