The explorer is out of sync. The last synced block is 194 hours ago. Current block height: explorer: 2206528 / node: 2331989 / ref: 2331989

Program credits_vault_v1.aleo

Program ID
credits_vault_v1.aleo
Owner signature
sign1hp6j0m4uz03qm7r30ped84lyd45w09ar93z56m9pmxy9trkw9vpzrhehqxc9226lhvyvm8m7aeg9th4z8cx3ur79denkhuc5llsvjqqm8555plq8qm58hteazn04fgnvceu4hnp7zj3ekzquseymgmanpdnzxhqtsugxlmvxwjmkv6xc8al30jgjgj4cfrs9ks4pt9temfjpz3zwfvl
Times called
2
Similar programs
0
Mappings
-
Structs
ArcaneTokenInfo
Records
-
Functions
-
Transitions
create_wrapped_token() -> ()
deposit_private_credits(credits.aleo/credits, u64, address) -> (arcanetoken_v2_0.aleo/ArcaneToken, credits.aleo/credits)
withdraw_private_credits(arcanetoken_v2_0.aleo/ArcaneToken, u64, address) -> (credits.aleo/credits, arcanetoken_v2_0.aleo/ArcaneToken)
Program Source Code (Aleo Instruction) Upload Leo source

import arcanetoken_v2_0.aleo;
import credits.aleo;

program credits_vault_v1.aleo;

struct ArcaneTokenInfo:
    token_id as u64;
    decimals as u8;
    max_supply as u128;
    admin as address;

function create_wrapped_token:
    call arcanetoken_v2_0.aleo/create_arcane_token 0u64 6u8 0u128 into r0;
    async create_wrapped_token r0 into r1;
    output r1 as credits_vault_v1.aleo/create_wrapped_token.future;
finalize create_wrapped_token:
    input r0 as arcanetoken_v2_0.aleo/create_arcane_token.future;
    await r0;

function deposit_private_credits:
    input r0 as credits.aleo/credits.record;
    input r1 as u64.private;
    input r2 as address.private;
    call credits.aleo/transfer_private_to_public r0 aleo1v4wr7pkskyzppx86kgnncm3wv00aqetef3jn5urhh0hq34a4g5fqcsgyzw r1 into r3 r4;
    cast r1 into r5 as u128;
    call arcanetoken_v2_0.aleo/mint_private 0u64 r2 r5 into r6 r7;
    async deposit_private_credits r4 r7 into r8;
    output r6 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r3 as credits.aleo/credits.record;
    output r8 as credits_vault_v1.aleo/deposit_private_credits.future;
finalize deposit_private_credits:
    input r0 as credits.aleo/transfer_private_to_public.future;
    input r1 as arcanetoken_v2_0.aleo/mint_private.future;
    await r0;
    await r1;

function withdraw_private_credits:
    input r0 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    input r1 as u64.private;
    input r2 as address.private;
    is.eq r0.token_id 0u64 into r3;
    assert.eq r3 true;
    call credits.aleo/transfer_public_to_private r2 r1 into r4 r5;
    cast r1 into r6 as u128;
    call arcanetoken_v2_0.aleo/burn_private r0 r6 into r7 r8;
    async withdraw_private_credits r5 r8 into r9;
    output r4 as credits.aleo/credits.record;
    output r7 as arcanetoken_v2_0.aleo/ArcaneToken.record;
    output r9 as credits_vault_v1.aleo/withdraw_private_credits.future;
finalize withdraw_private_credits:
    input r0 as credits.aleo/transfer_public_to_private.future;
    input r1 as arcanetoken_v2_0.aleo/burn_private.future;
    await r0;
    await r1;

Block heightTimestampTransition IDFunction callState
1,945,8412024-04-09 12:49:41au1z6fwfeterqxw845yq08n7azmhyy3qsl8r03244cvakv3lr4nruqqyu3636deposit_private_creditsAccepted
1,945,7832024-04-09 12:44:14au1ppwsz9a8u5tlt6m2gn8xsjunssfzkxecku4vusdft2mwngje2c8qpsdeaucreate_wrapped_tokenAccepted
Program has no mappings.
Not implemented