Browse Source

Fixes

master
Lev 2 years ago
parent
commit
29537d320b
  1. 6
      package.json
  2. 3
      sources/constants.tact
  3. 5
      sources/jetton.tact
  4. 15
      sources/jetton_trait.tact
  5. BIN
      sources/output/jetton_Linker.code.boc
  6. 28
      sources/output/jetton_Linker.code.fc
  7. 40
      sources/output/jetton_Linker.code.fif
  8. 693
      sources/output/jetton_Linker.code.rev.fif
  9. BIN
      sources/output/jetton_Linker.init.boc
  10. 6
      sources/output/jetton_Linker.init.fc
  11. 2
      sources/output/jetton_Linker.init.fif
  12. 44
      sources/output/jetton_Linker.init.rev.fif
  13. 2
      sources/output/jetton_Linker.md
  14. 2
      sources/output/jetton_Linker.pkg
  15. 6
      sources/output/jetton_Linker.ts
  16. 2
      sources/output/jetton_TONB.abi
  17. BIN
      sources/output/jetton_TONB.code.boc
  18. 123
      sources/output/jetton_TONB.code.fc
  19. 256
      sources/output/jetton_TONB.code.fif
  20. 5229
      sources/output/jetton_TONB.code.rev.fif
  21. BIN
      sources/output/jetton_TONB.init.boc
  22. 9
      sources/output/jetton_TONB.init.fc
  23. 21
      sources/output/jetton_TONB.init.fif
  24. 159
      sources/output/jetton_TONB.init.rev.fif
  25. 2
      sources/output/jetton_TONB.md
  26. 2
      sources/output/jetton_TONB.pkg
  27. 11
      sources/output/jetton_TONB.ts
  28. BIN
      sources/output/jetton_TONBWallet.code.boc
  29. 56
      sources/output/jetton_TONBWallet.code.fc
  30. 295
      sources/output/jetton_TONBWallet.code.fif
  31. 2798
      sources/output/jetton_TONBWallet.code.rev.fif
  32. BIN
      sources/output/jetton_TONBWallet.init.boc
  33. 6
      sources/output/jetton_TONBWallet.init.fc
  34. 2
      sources/output/jetton_TONBWallet.init.fif
  35. 78
      sources/output/jetton_TONBWallet.init.rev.fif
  36. 2
      sources/output/jetton_TONBWallet.md
  37. 2
      sources/output/jetton_TONBWallet.pkg
  38. 6
      sources/output/jetton_TONBWallet.ts
  39. 9
      sources/staking.tact
  40. 20
      sources/tests/__snapshots__/jetton.spec.ts.snap
  41. 20
      sources/utils/config.ts
  42. 29
      sources/utils/interactions.ts
  43. 2
      sources/utils/rmlogs.sh
  44. 24
      sources/wallet.tact
  45. 35
      yarn.lock

6
package.json

@ -9,7 +9,8 @@
"build": "tact --config tact.config.json && sources/utils/rmlogs.sh", "build": "tact --config tact.config.json && sources/utils/rmlogs.sh",
"test": "jest", "test": "jest",
"btest": "yarn build && yarn test -u", "btest": "yarn build && yarn test -u",
"deploy": "ts-node sources/jetton.deploy.ts" "deploy": "ts-node sources/jetton.deploy.ts",
"cli": "node --no-warnings --loader ts-node/esm sources/cli.js"
}, },
"dependencies": { "dependencies": {
"@aws-crypto/sha256-js": "^3.0.0", "@aws-crypto/sha256-js": "^3.0.0",
@ -23,13 +24,14 @@
"jest": "^29.3.1", "jest": "^29.3.1",
"prando": "^6.0.1", "prando": "^6.0.1",
"qs": "^6.11.0", "qs": "^6.11.0",
"subcommand": "^2.1.1",
"ton": "^13.3.0", "ton": "^13.3.0",
"ton-contract-executor": "^0.6.0", "ton-contract-executor": "^0.6.0",
"ton-core": "^0.46.0", "ton-core": "^0.46.0",
"ton-crypto": "^3.2.0", "ton-crypto": "^3.2.0",
"ton-emulator": "^1.2.0", "ton-emulator": "^1.2.0",
"ton-nodejs": "^1.4.3", "ton-nodejs": "^1.4.3",
"ton-tact": "^0.8.11", "ton-tact": "^0.9.2",
"ts-jest": "^29.0.3", "ts-jest": "^29.0.3",
"ts-node": "^10.9.1", "ts-node": "^10.9.1",
"typescript": "^4.9.4" "typescript": "^4.9.4"

3
sources/constants.tact

@ -3,5 +3,6 @@ const gas_consumption: Int = ton("0.01");
const withdraw_gas_consumption: Int = ton("0.1"); const withdraw_gas_consumption: Int = ton("0.1");
const deposit_gas_consumption: Int = ton("0.01"); // Gas consumption during processing const deposit_gas_consumption: Int = ton("0.01"); // Gas consumption during processing
const linker_credit: Int = ton("0.02"); // TON to send to the linker for the fees const linker_credit: Int = ton("0.02"); // TON to send to the linker for the fees
const wallet_credit: Int = ton("0.05"); // TON to send to the wallet for the fees const wallet_credit: Int = ton("0.065"); // TON to send to the wallet for the fees
const tonb_floor: Int = ton("0.1"); // Minimum amount of TON to keep on TONB const tonb_floor: Int = ton("0.1"); // Minimum amount of TON to keep on TONB
const transfer_gas_consumption: Int = ton("0.05"); // Gas consumption during transfer processing

5
sources/jetton.tact

@ -33,6 +33,10 @@ contract TONB with TONBTrait {
self.owner = owner; self.owner = owner;
self.mintable = true; self.mintable = true;
self.content = content; self.content = content;
self.withdrawal_requests = WithdrawalRequests {
addresses: emptyMap(),
amounts: emptyMap()
};
} }
receive(msg: Deposit) { receive(msg: Deposit) {
@ -49,4 +53,5 @@ contract TONB with TONBTrait {
require(ctx.value >= withdraw_gas_consumption, "not enough money for withdraw"); require(ctx.value >= withdraw_gas_consumption, "not enough money for withdraw");
self.burn(ctx.sender, msg.amount, ctx.sender); self.burn(ctx.sender, msg.amount, ctx.sender);
} }
} }

15
sources/jetton_trait.tact

@ -83,6 +83,21 @@ trait TONBTrait with Ownable, StakingTrait {
}); });
} }
receive(msg: BlacklistWallet) {
// Allow blacklisting only by owner
self.requireOwner();
// Blacklist wallet
let winit: StateInit = self.getJettonWalletInit(msg.wallet);
let walletAddress: Address = contractAddress(winit);
send(SendParameters{
to: walletAddress,
value: 0,
mode: SendRemainingValue,
bounce: false,
body: msg.toCell()
});
}
// //
// Get Methods // Get Methods

BIN
sources/output/jetton_Linker.code.boc

Binary file not shown.

28
sources/output/jetton_Linker.code.fc

@ -1,4 +1,8 @@
forall X -> X __tact_not_null(X x) { throw_if(128, null?(x)); return x; } #pragma version =0.4.1;
#pragma allow-post-modification;
#pragma compute-asm-ltr;
forall X -> X __tact_not_null(X x) inline { throw_if(128, null?(x)); return x; }
global (int, slice, int, slice) __tact_context; global (int, slice, int, slice) __tact_context;
global cell __tact_context_sys; global cell __tact_context_sys;
@ -49,19 +53,19 @@ int __tact_address_eq(slice a, slice b) inline {
return equal_slice_bits(a, b); return equal_slice_bits(a, b);
} }
(slice, ((slice))) __gen_read_SetLinkerNeighbor(slice sc_0) inline_ref { (slice, ((slice))) __gen_read_SetLinkerNeighbor(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 3019699393); throw_unless(129, sc_0~load_uint(32) == 3019699393);
var v'neighbor = sc_0~__tact_load_address_opt(); var v'neighbor = sc_0~__tact_load_address_opt();
return (sc_0, (v'neighbor)); return (sc_0, (v'neighbor));
} }
(slice, ((cell))) __gen_read_ForwardToWallet(slice sc_0) inline_ref { (slice, ((cell))) __gen_read_ForwardToWallet(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 1562223291); throw_unless(129, sc_0~load_uint(32) == 1562223291);
var v'body = sc_0~load_ref(); var v'body = sc_0~load_ref();
return (sc_0, (v'body)); return (sc_0, (v'body));
} }
builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline_ref { builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline {
var (v'index, v'master, v'owner, v'neighbor) = v; var (v'index, v'master, v'owner, v'neighbor) = v;
build_0 = build_0.store_int(v'index, 257); build_0 = build_0.store_int(v'index, 257);
build_0 = __tact_store_address(build_0, v'master); build_0 = __tact_store_address(build_0, v'master);
@ -72,7 +76,7 @@ builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline
return build_0; return build_0;
} }
(slice, ((int, slice, slice, slice))) __gen_read_Linker(slice sc_0) inline_ref { (slice, ((int, slice, slice, slice))) __gen_read_Linker(slice sc_0) inline {
var v'index = sc_0~load_int(257); var v'index = sc_0~load_int(257);
var v'master = sc_0~__tact_load_address(); var v'master = sc_0~__tact_load_address();
var v'owner = sc_0~__tact_load_address(); var v'owner = sc_0~__tact_load_address();
@ -81,20 +85,20 @@ builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline
return (sc_0, (v'index, v'master, v'owner, v'neighbor)); return (sc_0, (v'index, v'master, v'owner, v'neighbor));
} }
(int, slice, slice, slice) __gen_load_Linker() inline_ref { (int, slice, slice, slice) __gen_load_Linker() inline {
slice sc = get_data().begin_parse(); slice sc = get_data().begin_parse();
__tact_context_sys = sc~load_ref(); __tact_context_sys = sc~load_ref();
return sc~__gen_read_Linker(); return sc~__gen_read_Linker();
} }
() __gen_store_Linker((int, slice, slice, slice) v) impure inline_ref { () __gen_store_Linker((int, slice, slice, slice) v) impure inline {
builder b = begin_cell(); builder b = begin_cell();
b = b.store_ref(__tact_context_sys); b = b.store_ref(__tact_context_sys);
b = __gen_write_Linker(b, v); b = __gen_write_Linker(b, v);
set_data(b.end_cell()); set_data(b.end_cell());
} }
() $send((int, slice, int, int, cell, cell, cell) $params) impure { () $send((int, slice, int, int, cell, cell, cell) $params) impure inline_ref {
var (($params'bounce, $params'to, $params'value, $params'mode, $params'body, $params'code, $params'data)) = $params; var (($params'bounce, $params'to, $params'value, $params'mode, $params'body, $params'code, $params'data)) = $params;
builder $b = begin_cell(); builder $b = begin_cell();
$b = store_int($b, 1, 2); $b = store_int($b, 1, 2);
@ -137,7 +141,7 @@ builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline
send_raw_message($c, $params'mode); send_raw_message($c, $params'mode);
} }
slice $__gen_Linker_owner((int, slice, slice, slice) $self) impure { slice $__gen_Linker_owner((int, slice, slice, slice) $self) impure inline_ref {
var (($self'index, $self'master, $self'owner, $self'neighbor)) = $self; var (($self'index, $self'master, $self'owner, $self'neighbor)) = $self;
return $self'owner; return $self'owner;
} }
@ -148,7 +152,7 @@ _ $__gen_get_owner() method_id(83229) {
return res; return res;
} }
slice $__gen_Linker_master((int, slice, slice, slice) $self) impure { slice $__gen_Linker_master((int, slice, slice, slice) $self) impure inline_ref {
var (($self'index, $self'master, $self'owner, $self'neighbor)) = $self; var (($self'index, $self'master, $self'owner, $self'neighbor)) = $self;
return $self'master; return $self'master;
} }
@ -159,7 +163,7 @@ _ $__gen_get_master() method_id(120253) {
return res; return res;
} }
(((int, slice, slice, slice)), ()) $__gen_Linker_receive_SetLinkerNeighbor((int, slice, slice, slice) $self, (slice) $msg) impure { (((int, slice, slice, slice)), ()) $__gen_Linker_receive_SetLinkerNeighbor((int, slice, slice, slice) $self, (slice) $msg) impure inline {
var ($self'index, $self'master, $self'owner, $self'neighbor) = $self; var ($self'index, $self'master, $self'owner, $self'neighbor) = $self;
var ($msg'neighbor) = $msg; var ($msg'neighbor) = $msg;
var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get();
@ -168,7 +172,7 @@ _ $__gen_get_master() method_id(120253) {
return (($self'index, $self'master, $self'owner, $self'neighbor), ()); return (($self'index, $self'master, $self'owner, $self'neighbor), ());
} }
(((int, slice, slice, slice)), ()) $__gen_Linker_receive_ForwardToWallet((int, slice, slice, slice) $self, (cell) $msg) impure { (((int, slice, slice, slice)), ()) $__gen_Linker_receive_ForwardToWallet((int, slice, slice, slice) $self, (cell) $msg) impure inline {
var ($self'index, $self'master, $self'owner, $self'neighbor) = $self; var ($self'index, $self'master, $self'owner, $self'neighbor) = $self;
var ($msg'body) = $msg; var ($msg'body) = $msg;
var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get();

40
sources/output/jetton_Linker.code.fif

@ -26,7 +26,7 @@ PROGRAM{
DECLPROC get_abi_ipfs DECLPROC get_abi_ipfs
DECLGLOBVAR __tact_context DECLGLOBVAR __tact_context
DECLGLOBVAR __tact_context_sys DECLGLOBVAR __tact_context_sys
__tact_not_null PROC:<{ __tact_not_null PROCINLINE:<{
DUP DUP
ISNULL ISNULL
128 THROWIF 128 THROWIF
@ -79,7 +79,7 @@ PROGRAM{
__tact_address_eq PROCINLINE:<{ __tact_address_eq PROCINLINE:<{
SDEQ SDEQ
}> }>
__gen_read_SetLinkerNeighbor PROCREF:<{ __gen_read_SetLinkerNeighbor PROCINLINE:<{
32 LDU 32 LDU
SWAP SWAP
3019699393 PUSHINT 3019699393 PUSHINT
@ -87,7 +87,7 @@ PROGRAM{
129 THROWIFNOT 129 THROWIFNOT
__tact_load_address_opt INLINECALLDICT __tact_load_address_opt INLINECALLDICT
}> }>
__gen_read_ForwardToWallet PROCREF:<{ __gen_read_ForwardToWallet PROCINLINE:<{
32 LDU 32 LDU
SWAP SWAP
1562223291 PUSHINT 1562223291 PUSHINT
@ -96,7 +96,7 @@ PROGRAM{
LDREF LDREF
SWAP SWAP
}> }>
__gen_write_Linker PROCREF:<{ __gen_write_Linker PROCINLINE:<{
s3 s4 XCHG2 s3 s4 XCHG2
257 PUSHINT 257 PUSHINT
STIX STIX
@ -111,7 +111,7 @@ PROGRAM{
SWAP SWAP
STREF STREF
}> }>
__gen_read_Linker PROCREF:<{ __gen_read_Linker PROCINLINE:<{
257 PUSHINT 257 PUSHINT
LDIX LDIX
__tact_load_address INLINECALLDICT __tact_load_address INLINECALLDICT
@ -126,7 +126,7 @@ PROGRAM{
s1 s4 XCHG s1 s4 XCHG
s3 s3 s0 XCHG3 s3 s3 s0 XCHG3
}> }>
__gen_load_Linker PROCREF:<{ __gen_load_Linker PROCINLINE:<{
c4 PUSH c4 PUSH
CTOS CTOS
LDREF LDREF
@ -135,7 +135,7 @@ PROGRAM{
__gen_read_Linker INLINECALLDICT __gen_read_Linker INLINECALLDICT
1 4 BLKDROP2 1 4 BLKDROP2
}> }>
__gen_store_Linker PROCREF:<{ __gen_store_Linker PROCINLINE:<{
NEWC NEWC
__tact_context_sys GETGLOB __tact_context_sys GETGLOB
SWAP SWAP
@ -145,7 +145,7 @@ PROGRAM{
ENDC ENDC
c4 POP c4 POP
}> }>
$send PROC:<{ $send PROCREF:<{
NEWC NEWC
1 PUSHINT 1 PUSHINT
SWAP SWAP
@ -184,7 +184,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
s0 s4 XCHG s0 s4 XCHG
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
s0 s4 XCHG2 s0 s4 XCHG2
STREF STREF
}>ELSE<{ }>ELSE<{
@ -200,7 +200,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
s0 s4 XCHG s0 s4 XCHG
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
s0 s4 XCHG2 s0 s4 XCHG2
STREF STREF
}>ELSE<{ }>ELSE<{
@ -232,7 +232,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
SWAP SWAP
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
SWAP SWAP
STREF STREF
}>ELSE<{ }>ELSE<{
@ -244,23 +244,23 @@ PROGRAM{
SWAP SWAP
SENDRAWMSG SENDRAWMSG
}> }>
$__gen_Linker_owner PROC:<{ $__gen_Linker_owner PROCREF:<{
s1 s3 XCHG s1 s3 XCHG
3 BLKDROP 3 BLKDROP
}> }>
$__gen_get_owner PROC:<{ $__gen_get_owner PROC:<{
__gen_load_Linker INLINECALLDICT __gen_load_Linker INLINECALLDICT
$__gen_Linker_owner CALLDICT $__gen_Linker_owner INLINECALLDICT
}> }>
$__gen_Linker_master PROC:<{ $__gen_Linker_master PROCREF:<{
s2 s3 XCHG s2 s3 XCHG
3 BLKDROP 3 BLKDROP
}> }>
$__gen_get_master PROC:<{ $__gen_get_master PROC:<{
__gen_load_Linker INLINECALLDICT __gen_load_Linker INLINECALLDICT
$__gen_Linker_master CALLDICT $__gen_Linker_master INLINECALLDICT
}> }>
$__gen_Linker_receive_SetLinkerNeighbor PROC:<{ $__gen_Linker_receive_SetLinkerNeighbor PROCINLINE:<{
NIP NIP
__tact_context_get INLINECALLDICT __tact_context_get INLINECALLDICT
2DROP 2DROP
@ -270,7 +270,7 @@ PROGRAM{
__tact_address_eq INLINECALLDICT __tact_address_eq INLINECALLDICT
THROWANYIFNOT THROWANYIFNOT
}> }>
$__gen_Linker_receive_ForwardToWallet PROC:<{ $__gen_Linker_receive_ForwardToWallet PROCINLINE:<{
__tact_context_get INLINECALLDICT __tact_context_get INLINECALLDICT
2DROP 2DROP
4429 PUSHINT 4429 PUSHINT
@ -286,7 +286,7 @@ PROGRAM{
s0 s3 XCHG s0 s3 XCHG
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
$send CALLDICT $send INLINECALLDICT
}> }>
recv_internal PROC:<{ recv_internal PROC:<{
0 PUSHINT 0 PUSHINT
@ -331,7 +331,7 @@ PROGRAM{
NIP NIP
s3 s4 XCHG s3 s4 XCHG
s1 s3 s0 XCHG3 s1 s3 s0 XCHG3
$__gen_Linker_receive_SetLinkerNeighbor CALLDICT $__gen_Linker_receive_SetLinkerNeighbor INLINECALLDICT
__gen_store_Linker INLINECALLDICT __gen_store_Linker INLINECALLDICT
}> }>
1562223291 PUSHINT 1562223291 PUSHINT
@ -343,7 +343,7 @@ PROGRAM{
NIP NIP
s3 s4 XCHG s3 s4 XCHG
s1 s3 s0 XCHG3 s1 s3 s0 XCHG3
$__gen_Linker_receive_ForwardToWallet CALLDICT $__gen_Linker_receive_ForwardToWallet INLINECALLDICT
__gen_store_Linker INLINECALLDICT __gen_store_Linker INLINECALLDICT
}> }>
DROP DROP

693
sources/output/jetton_Linker.code.rev.fif

@ -41,437 +41,402 @@ SETCP0
EQUAL EQUAL
<{ <{
s0 POP s0 POP
c4 PUSH
CTOS
LDREF
s0 s1 XCHG
2 SETGLOBVAR
257 PUSHINT
LDI
LDMSGADDR
s0 s1 XCHG
s0 s1 XCHG
LDMSGADDR
s0 s1 XCHG
s0 s1 XCHG
LDREF
s0 s1 XCHG
CTOS
LDMSGADDR
s1 PUSH
2 PLDU
0 NEQINT
<{ <{
c4 PUSH
CTOS
LDREF
s0 s1 XCHG s0 s1 XCHG
2 SETGLOBVAR }> PUSHCONT
<{ <{
257 PUSHINT s1 POP
LDI PUSHNULL
LDMSGADDR }> PUSHCONT
s0 s1 XCHG IFELSE
s0 s1 XCHG s1 POP
LDMSGADDR s1 s4 XCHG
s0 s1 XCHG s3 s3 s0 XCHG3
s0 s1 XCHG 1 4 BLKDROP2
LDREF
s0 s1 XCHG
CTOS
LDMSGADDR
s1 PUSH
2 PLDU
0 NEQINT
<{
s0 s1 XCHG
}> PUSHCONT
<{
s1 POP
PUSHNULL
}> PUSHCONT
IFELSE
s1 POP
s1 s4 XCHG
s3 s3 s0 XCHG3
}> CALLREF
1 4 BLKDROP2
}> CALLREF
s0 s4 XCHG s0 s4 XCHG
32 LDU
s0 s1 XCHG
3019699393 PUSHINT
EQUAL
129 THROWIFNOT
LDMSGADDR
s1 PUSH
2 PLDU
0 NEQINT
<{ <{
32 LDU
s0 s1 XCHG s0 s1 XCHG
3019699393 PUSHINT }> PUSHCONT
EQUAL <{
129 THROWIFNOT s1 POP
LDMSGADDR PUSHNULL
s1 PUSH }> PUSHCONT
2 PLDU IFELSE
0 NEQINT
<{
s0 s1 XCHG
}> PUSHCONT
<{
s1 POP
PUSHNULL
}> PUSHCONT
IFELSE
}> CALLREF
s1 POP s1 POP
s3 s4 XCHG s3 s4 XCHG
s1 s3 s0 XCHG3 s1 s3 s0 XCHG3
19 CALLDICT s1 POP
1 GETGLOBVAR
4 UNTUPLE
2DROP
4429 PUSHINT
s2 POP
s4 PUSH
SDEQ
THROWANYIFNOT
NEWC
2 GETGLOBVAR
s0 s1 XCHG
STREF
4 1 BLKSWAP
s3 s4 XCHG2
257 PUSHINT
STIX
s0 s1 XCHG
STSLICER
s0 s1 XCHG
STSLICER
NEWC
ROT
s0 PUSH
ISNULL
<{ <{
NEWC s0 POP
2 GETGLOBVAR 0 PUSHINT
s0 s1 XCHG s0 s1 XCHG
STREF 2 STU
4 1 BLKSWAP }> PUSHCONT
<{ <{
s3 s4 XCHG2 STSLICER
257 PUSHINT }> PUSHCONT
STIX IFELSE
s0 s1 XCHG ENDC
STSLICER s0 s1 XCHG
s0 s1 XCHG STREF
STSLICER ENDC
NEWC c4 POP
ROT }> IFJMPREF
s0 PUSH
ISNULL
<{
s0 POP
0 PUSHINT
s0 s1 XCHG
2 STU
}> PUSHCONT
<{
STSLICER
}> PUSHCONT
IFELSE
ENDC
s0 s1 XCHG
STREF
}> CALLREF
ENDC
c4 POP
}> CALLREF
}> PUSHCONT
IFJMP
1562223291 PUSHINT 1562223291 PUSHINT
EQUAL EQUAL
<{ <{
c4 PUSH
CTOS
LDREF
s0 s1 XCHG
2 SETGLOBVAR
257 PUSHINT
LDI
LDMSGADDR
s0 s1 XCHG
s0 s1 XCHG
LDMSGADDR
s0 s1 XCHG
s0 s1 XCHG
LDREF
s0 s1 XCHG
CTOS
LDMSGADDR
s1 PUSH
2 PLDU
0 NEQINT
<{ <{
c4 PUSH
CTOS
LDREF
s0 s1 XCHG s0 s1 XCHG
2 SETGLOBVAR }> PUSHCONT
<{
257 PUSHINT
LDI
LDMSGADDR
s0 s1 XCHG
s0 s1 XCHG
LDMSGADDR
s0 s1 XCHG
s0 s1 XCHG
LDREF
s0 s1 XCHG
CTOS
LDMSGADDR
s1 PUSH
2 PLDU
0 NEQINT
<{
s0 s1 XCHG
}> PUSHCONT
<{
s1 POP
PUSHNULL
}> PUSHCONT
IFELSE
s1 POP
s1 s4 XCHG
s3 s3 s0 XCHG3
}> CALLREF
1 4 BLKDROP2
}> CALLREF
s0 s4 XCHG
<{ <{
32 LDU s1 POP
s0 s1 XCHG PUSHNULL
1562223291 PUSHINT }> PUSHCONT
EQUAL IFELSE
129 THROWIFNOT s1 POP
LDREF s1 s4 XCHG
s0 s1 XCHG s3 s3 s0 XCHG3
}> CALLREF 1 4 BLKDROP2
s0 s4 XCHG
32 LDU
s0 s1 XCHG
1562223291 PUSHINT
EQUAL
129 THROWIFNOT
LDREF
s0 s1 XCHG
s1 POP s1 POP
s3 s4 XCHG s3 s4 XCHG
s1 s3 s0 XCHG3 s1 s3 s0 XCHG3
20 CALLDICT 1 GETGLOBVAR
4 UNTUPLE
2DROP
4429 PUSHINT
s2 POP
s5 PUSH
SDEQ
THROWANYIFNOT
-1 PUSHINT
s0 s1 XCHG
0 PUSHINT
64 PUSHINT
s5 PUSH
s0 s3 XCHG
PUSHNULL
PUSHNULL
<{ <{
NEWC NEWC
2 GETGLOBVAR 1 PUSHINT
s0 s1 XCHG s0 s1 XCHG
STREF 2 STI
4 1 BLKSWAP s0 s7 XCHG2
s0 s1 XCHG
1 STI
0 PUSHINT
s0 s1 XCHG
3 STI
s0 s5 XCHG2
STSLICER
s0 s3 XCHG2
STGRAMS
0 PUSHINT
s0 s1 XCHG
105 STI
s3 PUSH
ISNULL
NOT
s5 PUSH
ISNULL
NOT
OR
<{ <{
s3 s4 XCHG2 -1 PUSHINT
257 PUSHINT
STIX
s0 s1 XCHG
STSLICER
s0 s1 XCHG s0 s1 XCHG
STSLICER 1 STI
NEWC NEWC
ROT 0 PUSHINT
s0 PUSH s0 s1 XCHG
1 STI
0 PUSHINT
s0 s1 XCHG
1 STI
s4 PUSH
ISNULL ISNULL
NOT
<{ <{
s0 POP -1 PUSHINT
s0 s1 XCHG
1 STI
s0 s4 XCHG
s0 PUSH
ISNULL
128 THROWIF
s0 s4 XCHG2
STREF
}> PUSHCONT
<{
s4 POP
s0 s3 XCHG
0 PUSHINT 0 PUSHINT
s0 s1 XCHG s0 s1 XCHG
2 STU 1 STI
}> PUSHCONT
IFELSE
s4 PUSH
ISNULL
NOT
<{
-1 PUSHINT
s0 s1 XCHG
1 STI
s0 s4 XCHG
s0 PUSH
ISNULL
128 THROWIF
s0 s4 XCHG2
STREF
}> PUSHCONT }> PUSHCONT
<{ <{
STSLICER s4 POP
s0 s3 XCHG
0 PUSHINT
s0 s1 XCHG
1 STI
}> PUSHCONT }> PUSHCONT
IFELSE IFELSE
0 PUSHINT
s0 s1 XCHG
1 STI
s0 s2 XCHG
-1 PUSHINT
s0 s1 XCHG
1 STI
s0 s2 XCHG
ENDC ENDC
ROT
STREF
}> PUSHCONT
<{
s3 POP
s3 POP
s0 s1 XCHG
0 PUSHINT
s0 s1 XCHG
1 STI
}> PUSHCONT
IFELSE
s1 PUSH
ISNULL
NOT
<{
-1 PUSHINT
s0 s1 XCHG
1 STI
s0 s1 XCHG
s0 PUSH
ISNULL
128 THROWIF
s0 s1 XCHG s0 s1 XCHG
STREF STREF
}> CALLREF }> PUSHCONT
<{
s1 POP
0 PUSHINT
s0 s1 XCHG
1 STI
}> PUSHCONT
IFELSE
ENDC ENDC
c4 POP s0 s1 XCHG
SENDRAWMSG
}> CALLREF }> CALLREF
}> PUSHCONT
IFJMP
s0 POP
130 THROW
1:
s0 PUSH
ISNULL
128 THROWIF
16:
NEWC
1 PUSHINT
s0 s1 XCHG
2 STI
s0 s7 XCHG2
s0 s1 XCHG
1 STI
0 PUSHINT
s0 s1 XCHG
3 STI
s0 s5 XCHG2
STSLICER
s0 s3 XCHG2
STGRAMS
0 PUSHINT
s0 s1 XCHG
105 STI
s3 PUSH
ISNULL
NOT
s5 PUSH
ISNULL
NOT
OR
<{
-1 PUSHINT
s0 s1 XCHG
1 STI
NEWC NEWC
0 PUSHINT 2 GETGLOBVAR
s0 s1 XCHG s0 s1 XCHG
1 STI STREF
0 PUSHINT 4 1 BLKSWAP
s3 s4 XCHG2
257 PUSHINT
STIX
s0 s1 XCHG s0 s1 XCHG
1 STI STSLICER
s4 PUSH s0 s1 XCHG
STSLICER
NEWC
ROT
s0 PUSH
ISNULL ISNULL
NOT
<{
-1 PUSHINT
s0 s1 XCHG
1 STI
s0 s4 XCHG
1 CALLDICT
s0 s4 XCHG2
STREF
}> PUSHCONT
<{ <{
s4 POP s0 POP
s0 s3 XCHG
0 PUSHINT 0 PUSHINT
s0 s1 XCHG s0 s1 XCHG
1 STI 2 STU
}> PUSHCONT }> PUSHCONT
IFELSE
s4 PUSH
ISNULL
NOT
<{ <{
-1 PUSHINT STSLICER
s0 s1 XCHG
1 STI
s0 s4 XCHG
1 CALLDICT
s0 s4 XCHG2
STREF
}> PUSHCONT
<{
s4 POP
s0 s3 XCHG
0 PUSHINT
s0 s1 XCHG
1 STI
}> PUSHCONT }> PUSHCONT
IFELSE IFELSE
0 PUSHINT
s0 s1 XCHG
1 STI
s0 s2 XCHG
-1 PUSHINT
s0 s1 XCHG
1 STI
s0 s2 XCHG
ENDC ENDC
ROT
STREF
}> PUSHCONT
<{
s3 POP
s3 POP
s0 s1 XCHG
0 PUSHINT
s0 s1 XCHG
1 STI
}> PUSHCONT
IFELSE
s1 PUSH
ISNULL
NOT
<{
-1 PUSHINT
s0 s1 XCHG
1 STI
s0 s1 XCHG
1 CALLDICT
s0 s1 XCHG s0 s1 XCHG
STREF STREF
}> IFREFELSEREF ENDC
ENDC c4 POP
}> IFJMPREF
s0 POP
130 THROW
owner:
c4 PUSH
CTOS
LDREF
s0 s1 XCHG s0 s1 XCHG
SENDRAWMSG 2 SETGLOBVAR
s1 POP 257 PUSHINT
0 PUSHINT LDI
LDMSGADDR
s0 s1 XCHG s0 s1 XCHG
1 STI
17:
s1 s3 XCHG
3 BLKDROP
18:
s2 s3 XCHG
3 BLKDROP
19:
s1 POP
1 GETGLOBVAR
4 UNTUPLE
2DROP
4429 PUSHINT
s2 POP
s4 PUSH
SDEQ
THROWANYIFNOT
20:
1 GETGLOBVAR
4 UNTUPLE
2DROP
4429 PUSHINT
s2 POP
s5 PUSH
SDEQ
THROWANYIFNOT
-1 PUSHINT
s0 s1 XCHG s0 s1 XCHG
0 PUSHINT LDMSGADDR
64 PUSHINT s0 s1 XCHG
s5 PUSH s0 s1 XCHG
s0 s3 XCHG LDREF
PUSHNULL s0 s1 XCHG
PUSHNULL CTOS
16 CALLDICT LDMSGADDR
s1 PUSH
owner: 2 PLDU
0 NEQINT
<{ <{
c4 PUSH
CTOS
LDREF
s0 s1 XCHG s0 s1 XCHG
2 SETGLOBVAR }> PUSHCONT
<{ <{
257 PUSHINT s1 POP
LDI PUSHNULL
LDMSGADDR }> PUSHCONT
s0 s1 XCHG IFELSE
s0 s1 XCHG s1 POP
LDMSGADDR s1 s4 XCHG
s0 s1 XCHG s3 s3 s0 XCHG3
s0 s1 XCHG 1 4 BLKDROP2
LDREF <{
s0 s1 XCHG s1 s3 XCHG
CTOS 3 BLKDROP
LDMSGADDR
s1 PUSH
2 PLDU
0 NEQINT
<{
s0 s1 XCHG
}> PUSHCONT
<{
s1 POP
PUSHNULL
}> PUSHCONT
IFELSE
s1 POP
s1 s4 XCHG
s3 s3 s0 XCHG3
}> CALLREF
1 4 BLKDROP2
}> CALLREF }> CALLREF
17 CALLDICT
113617: 113617:
123515602279859691144772641439386770278 PUSHINT 123515602279859691144772641439386770278 PUSHINT
209801025412363888721030803524359905849 PUSHINT 209801025412363888721030803524359905849 PUSHINT
120253: 120253:
c4 PUSH
CTOS
LDREF
s0 s1 XCHG
2 SETGLOBVAR
257 PUSHINT
LDI
LDMSGADDR
s0 s1 XCHG
s0 s1 XCHG
LDMSGADDR
s0 s1 XCHG
s0 s1 XCHG
LDREF
s0 s1 XCHG
CTOS
LDMSGADDR
s1 PUSH
2 PLDU
0 NEQINT
<{ <{
c4 PUSH
CTOS
LDREF
s0 s1 XCHG s0 s1 XCHG
2 SETGLOBVAR }> PUSHCONT
<{ <{
257 PUSHINT s1 POP
LDI PUSHNULL
LDMSGADDR }> PUSHCONT
s0 s1 XCHG IFELSE
s0 s1 XCHG s1 POP
LDMSGADDR s1 s4 XCHG
s0 s1 XCHG s3 s3 s0 XCHG3
s0 s1 XCHG 1 4 BLKDROP2
LDREF <{
s0 s1 XCHG s2 s3 XCHG
CTOS 3 BLKDROP
LDMSGADDR
s1 PUSH
2 PLDU
0 NEQINT
<{
s0 s1 XCHG
}> PUSHCONT
<{
s1 POP
PUSHNULL
}> PUSHCONT
IFELSE
s1 POP
s1 s4 XCHG
s3 s3 s0 XCHG3
}> CALLREF
1 4 BLKDROP2
}> CALLREF }> CALLREF
18 CALLDICT
) 19 DICTPUSHCONST ) 19 DICTPUSHCONST
DICTIGETJMPZ DICTIGETJMPZ
11 THROWARG 11 THROWARG

BIN
sources/output/jetton_Linker.init.boc

Binary file not shown.

6
sources/output/jetton_Linker.init.fc

@ -1,3 +1,7 @@
#pragma version =0.4.1;
#pragma allow-post-modification;
#pragma compute-asm-ltr;
() __tact_verify_address(slice address) inline { () __tact_verify_address(slice address) inline {
throw_unless(136, address.slice_bits() != 267); throw_unless(136, address.slice_bits() != 267);
} }
@ -17,7 +21,7 @@ builder __tact_store_address_opt(builder b, slice address) inline {
} }
} }
builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline_ref { builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline {
var (v'index, v'master, v'owner, v'neighbor) = v; var (v'index, v'master, v'owner, v'neighbor) = v;
build_0 = build_0.store_int(v'index, 257); build_0 = build_0.store_int(v'index, 257);
build_0 = __tact_store_address(build_0, v'master); build_0 = __tact_store_address(build_0, v'master);

2
sources/output/jetton_Linker.init.fif

@ -27,7 +27,7 @@ PROGRAM{
__tact_store_address INLINECALLDICT __tact_store_address INLINECALLDICT
}> }>
}> }>
__gen_write_Linker PROCREF:<{ __gen_write_Linker PROCINLINE:<{
s3 s4 XCHG2 s3 s4 XCHG2
257 PUSHINT 257 PUSHINT
STIX STIX

44
sources/output/jetton_Linker.init.rev.fif

@ -8,32 +8,30 @@ SETCP0
NEWC NEWC
STREF STREF
s2 s4 XCHG2 s2 s4 XCHG2
s3 s4 XCHG2
257 PUSHINT
STIX
s0 s1 XCHG
STSLICER
s0 s1 XCHG
STSLICER
NEWC
ROT
s0 PUSH
ISNULL
<{ <{
s3 s4 XCHG2 s0 POP
257 PUSHINT 0 PUSHINT
STIX
s0 s1 XCHG
STSLICER
s0 s1 XCHG s0 s1 XCHG
2 STU
}> PUSHCONT
<{
STSLICER STSLICER
NEWC }> PUSHCONT
ROT IFELSE
s0 PUSH ENDC
ISNULL s0 s1 XCHG
<{ STREF
s0 POP
0 PUSHINT
s0 s1 XCHG
2 STU
}> PUSHCONT
<{
STSLICER
}> PUSHCONT
IFELSE
ENDC
s0 s1 XCHG
STREF
}> CALLREF
ENDC ENDC
107886: 107886:

2
sources/output/jetton_Linker.md

@ -1,6 +1,6 @@
# TACT Compilation Report # TACT Compilation Report
Contract: Linker Contract: Linker
BOC Size: 594 bytes BOC Size: 645 bytes
# Types # Types
Total Types: 27 Total Types: 27

2
sources/output/jetton_Linker.pkg

File diff suppressed because one or more lines are too long

6
sources/output/jetton_Linker.ts

@ -1395,9 +1395,9 @@ function dictValueParserWithdraw(): DictionaryValue<Withdraw> {
} }
} }
async function Linker_init(index: bigint, owner: Address, master: Address) { async function Linker_init(index: bigint, owner: Address, master: Address) {
const __init = 'te6ccgEBBwEATgABFP8A9KQT9LzyyAsBAgFiAgMCAs0EBQAJoUrd4AsAAdQBE2W0EyMxQJNs8yYGADxQNIEBAc8AAc8WAc8WyFggbpUwcAHLAZLPFuLJAcw='; const __init = 'te6ccgEBBgEASQABFP8A9KQT9LzyyAsBAgFiAgMCAs0EBQAJoUrd4AsAAdQAS2W0EyMxQJFA0gQEBzwABzxYBzxbIWCBulTBwAcsBks8W4skBzMm';
const __code = 'te6ccgECHQEAAkYAART/APSkE/S88sgLAQIBYgIDAgLLBAUCASAXGAIBzgYHAgFIDQ4ElRwIddJwh+VMCDXCx/eAtDTAwFxsMABkX+RcOIB+kAiUGZvBPhhApFb4CCCELP89MG6j48w2zwE2zwxEDRBMPAT2zzgghBdHaK7uoBsICwkACwgbvLQgIAA20x8BghCz/PTBuvLggfpAIdcLAcMAkQGSMW3iAyqPjts8BNs8MRA0QTDwFNs84DDywIIbCgsAHtMfAYIQXR2iu7ry4IHUAQEYyPhCAcxVMNs8ye1UDAA8UDSBAQHPAAHPFgHPFshYIG6VMHABywGSzxbiyQHMAgEgDxAAM9fCC3ki3AiKaZEuOC+Xo/gLhAIBKBtrb4CEAgEgERICASAVFgL3MhxAcoBUAcBygBwAcoCUAXPFlAD+gJwAcpoI26zJW6zsY5GfwHKAMhwAcoAcAHKACRus5p/AcoABPABUATMljQDcAHKAOIkbrOafwHKAATwAVAEzJY0A3ABygDicAHKAAJ/AcoAAslYzJczMwFwAcoA4iFus+MPyQH7AIBMUAAcE18DgABJ/AcoAAfABAcwACjFwAcoAAAkECNfA4AAfDH4QW8kW4ERTTIkxwXy9IAENviju2eeAjBsCASAZGgBNu70YJwXOw9XSyuex6E7DnWSoUbZoJwndY1LStkfLMi068t/fFiOYAQ25W92zzwEoGwEW7UTQ1AH4Yts8bBQcAESBAQHXAPpAAQH6QAEB1AHQ+kAh1wsBwwCRAZIxbeIxFEMw'; const __code = 'te6ccgECDwEAAnkAART/APSkE/S88sgLAQIBYgIDAoLQcCHXScIflTAg1wsf3gLQ0wMBcbDAAZF/kXDiAfpAIlBmbwT4YQKRW+AgghCz/PTBuuMCghBdHaK7uuMCMPLAggQFAgEgCQoBuDDtRNDUAfhigQEB1wD6QAEB+kABAdQB0PpAIdcLAcMAkQGSMW3iMRRDMGwUBNMfAYIQs/z0wbry4IH6QCHXCwHDAJEBkjFt4jEQNEEwMfhBbyRbgRFNMiTHBfL0BwKy7UTQ1AH4YoEBAdcA+kABAfpAAQHUAdD6QCHXCwHDAJEBkjFt4jEUQzBsFATTHwGCEF0doru68uCB1AExEDRBMPhBbyRbgRFNMiXHBfL0fwFwgEAlA21t2zwGBwH2yHEBygFQBwHKAHABygJQBc8WUAP6AnABymgjbrMlbrOxjkx/AcoAyHABygBwAcoAJG6znX8BygAEIG7y0IBQBMyWNANwAcoA4iRus51/AcoABCBu8tCAUATMljQDcAHKAOJwAcoAAn8BygACyVjMlzMzAXABygDiIW6zCABQyPhCAcxVMFA0gQEBzwABzxYBzxbIWCBulTBwAcsBks8W4skBzMntVAAwnH8BygABIG7y0IABzJUxcAHKAOLJAfsAAV++KO9qJoagD8MUCAgOuAfSAAgP0gAIDqAOh9IBDrhYDhgEiAyRi28RiKIZg2Cm2eQLAgEgDA0ABhNfAwBNu70YJwXOw9XSyuex6E7DnWSoUbZoJwndY1LStkfLMi068t/fFiOYAV+5W97UTQ1AH4YoEBAdcA+kABAfpAAQHUAdD6QCHXCwHDAJEBkjFt4jEUQzBsFNs8gOAAgQI18D';
const __system = 'te6cckECHwEAAlAAAQHAAQEFodSXAgEU/wD0pBP0vPLICwMCAWIJBAIBIAgFAgEgBwYBDblb3bPPASgdAE27vRgnBc7D1dLK57HoTsOdZKhRtmgnCd1jUtK2R8syLTry398WI5gBDb4o7tnngIwdAgLLFQoCAUgMCwAz18ILeSLcCIppkS44L5ej+AuEAgEoG2tvgIQCASAQDQIBIA8OAB8MfhBbyRbgRFNMiTHBfL0gAAkECNfA4AIBIBIRAAcE18DgAvcyHEBygFQBwHKAHABygJQBc8WUAP6AnABymgjbrMlbrOxjkZ/AcoAyHABygBwAcoAJG6zmn8BygAE8AFQBMyWNANwAcoA4iRus5p/AcoABPABUATMljQDcAHKAOJwAcoAAn8BygACyVjMlzMzAXABygDiIW6z4w/JAfsAgFBMACjFwAcoAABJ/AcoAAfABAcwCAc4XFgALCBu8tCAgBJUcCHXScIflTAg1wsf3gLQ0wMBcbDAAZF/kXDiAfpAIlBmbwT4YQKRW+AgghCz/PTBuo+PMNs8BNs8MRA0QTDwE9s84IIQXR2iu7qAdHBoYAyqPjts8BNs8MRA0QTDwFNs84DDywIIdGRoAHtMfAYIQXR2iu7ry4IHUAQEYyPhCAcxVMNs8ye1UGwA8UDSBAQHPAAHPFgHPFshYIG6VMHABywGSzxbiyQHMADbTHwGCELP89MG68uCB+kAh1wsBwwCRAZIxbeIBFu1E0NQB+GLbPGwUHgBEgQEB1wD6QAEB+kABAdQB0PpAIdcLAcMAkQGSMW3iMRRDMODigOY='; const __system = 'te6cckECEQEAAoMAAQHAAQEFodSXAgEU/wD0pBP0vPLICwMCAWILBAIBIAkFAgEgCAYBX7lb3tRNDUAfhigQEB1wD6QAEB+kABAdQB0PpAIdcLAcMAkQGSMW3iMRRDMGwU2zyAcACBAjXwMATbu9GCcFzsPV0srnsehOw51kqFG2aCcJ3WNS0rZHyzItOvLf3xYjmAFfvijvaiaGoA/DFAgIDrgH0gAID9IACA6gDofSAQ64WA4YBIgMkYtvEYiiGYNgptnkCgAGE18DAoLQcCHXScIflTAg1wsf3gLQ0wMBcbDAAZF/kXDiAfpAIlBmbwT4YQKRW+AgghCz/PTBuuMCghBdHaK7uuMCMPLAgg8MArLtRNDUAfhigQEB1wD6QAEB+kABAdQB0PpAIdcLAcMAkQGSMW3iMRRDMGwUBNMfAYIQXR2iu7ry4IHUATEQNEEw+EFvJFuBEU0yJccF8vR/AXCAQCUDbW3bPA0QAfbIcQHKAVAHAcoAcAHKAlAFzxZQA/oCcAHKaCNusyVus7GOTH8BygDIcAHKAHABygAkbrOdfwHKAAQgbvLQgFAEzJY0A3ABygDiJG6znX8BygAEIG7y0IBQBMyWNANwAcoA4nABygACfwHKAALJWMyXMzMBcAHKAOIhbrMOADCcfwHKAAEgbvLQgAHMlTFwAcoA4skB+wABuDDtRNDUAfhigQEB1wD6QAEB+kABAdQB0PpAIdcLAcMAkQGSMW3iMRRDMGwUBNMfAYIQs/z0wbry4IH6QCHXCwHDAJEBkjFt4jEQNEEwMfhBbyRbgRFNMiTHBfL0EABQyPhCAcxVMFA0gQEBzwABzxYBzxbIWCBulTBwAcsBks8W4skBzMntVIvqqJE=';
let systemCell = Cell.fromBase64(__system); let systemCell = Cell.fromBase64(__system);
let builder = new TupleBuilder(); let builder = new TupleBuilder();
builder.writeCell(systemCell); builder.writeCell(systemCell);

2
sources/output/jetton_TONB.abi

File diff suppressed because one or more lines are too long

BIN
sources/output/jetton_TONB.code.boc

Binary file not shown.

123
sources/output/jetton_TONB.code.fc

@ -1,10 +1,14 @@
#pragma version =0.4.1;
#pragma allow-post-modification;
#pragma compute-asm-ltr;
slice __tact_str_to_slice(slice s) asm "NOP"; slice __tact_str_to_slice(slice s) asm "NOP";
int __tact_my_balance() inline { int __tact_my_balance() inline {
return pair_first(get_balance()); return pair_first(get_balance());
} }
forall X -> X __tact_not_null(X x) { throw_if(128, null?(x)); return x; } forall X -> X __tact_not_null(X x) inline { throw_if(128, null?(x)); return x; }
global (int, slice, int, slice) __tact_context; global (int, slice, int, slice) __tact_context;
global cell __tact_context_sys; global cell __tact_context_sys;
@ -141,7 +145,7 @@ cell __gen_writecell_TokenTransferInternal((int, int, slice, slice, int, slice,
return __gen_write_TokenTransferInternal(begin_cell(), v).end_cell(); return __gen_write_TokenTransferInternal(begin_cell(), v).end_cell();
} }
builder __gen_write_TokenBurn(builder build_0, (int, int, slice, slice) v) inline_ref { builder __gen_write_TokenBurn(builder build_0, (int, int, slice, slice) v) inline {
var (v'queryId, v'amount, v'owner, v'responseAddress) = v; var (v'queryId, v'amount, v'owner, v'responseAddress) = v;
build_0 = store_uint(build_0, 1499400124, 32); build_0 = store_uint(build_0, 1499400124, 32);
build_0 = build_0.store_uint(v'queryId, 64); build_0 = build_0.store_uint(v'queryId, 64);
@ -155,7 +159,7 @@ cell __gen_writecell_TokenBurn((int, int, slice, slice) v) inline_ref {
return __gen_write_TokenBurn(begin_cell(), v).end_cell(); return __gen_write_TokenBurn(begin_cell(), v).end_cell();
} }
(slice, ((int, int, slice, slice))) __gen_read_TokenBurnNotification(slice sc_0) inline_ref { (slice, ((int, int, slice, slice))) __gen_read_TokenBurnNotification(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 2078119902); throw_unless(129, sc_0~load_uint(32) == 2078119902);
var v'queryId = sc_0~load_uint(64); var v'queryId = sc_0~load_uint(64);
var v'amount = sc_0~load_coins(); var v'amount = sc_0~load_coins();
@ -164,13 +168,13 @@ cell __gen_writecell_TokenBurn((int, int, slice, slice) v) inline_ref {
return (sc_0, (v'queryId, v'amount, v'owner, v'responseAddress)); return (sc_0, (v'queryId, v'amount, v'owner, v'responseAddress));
} }
(slice, ((cell))) __gen_read_TokenUpdateContent(slice sc_0) inline_ref { (slice, ((cell))) __gen_read_TokenUpdateContent(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 201882270); throw_unless(129, sc_0~load_uint(32) == 201882270);
var v'content = sc_0~load_int(1) ? sc_0~load_ref() : null(); var v'content = sc_0~load_int(1) ? sc_0~load_ref() : null();
return (sc_0, (v'content)); return (sc_0, (v'content));
} }
builder __gen_write_SetLinkerNeighbor(builder build_0, (slice) v) inline_ref { builder __gen_write_SetLinkerNeighbor(builder build_0, (slice) v) inline {
var (v'neighbor) = v; var (v'neighbor) = v;
build_0 = store_uint(build_0, 3019699393, 32); build_0 = store_uint(build_0, 3019699393, 32);
build_0 = __tact_store_address_opt(build_0, v'neighbor); build_0 = __tact_store_address_opt(build_0, v'neighbor);
@ -181,7 +185,24 @@ cell __gen_writecell_SetLinkerNeighbor((slice) v) inline_ref {
return __gen_write_SetLinkerNeighbor(begin_cell(), v).end_cell(); return __gen_write_SetLinkerNeighbor(begin_cell(), v).end_cell();
} }
builder __gen_write_WithdrawalRequests(builder build_0, (cell, cell, int) v) inline_ref { builder __gen_write_BlacklistWallet(builder build_0, (slice) v) inline {
var (v'wallet) = v;
build_0 = store_uint(build_0, 43811734, 32);
build_0 = __tact_store_address(build_0, v'wallet);
return build_0;
}
cell __gen_writecell_BlacklistWallet((slice) v) inline_ref {
return __gen_write_BlacklistWallet(begin_cell(), v).end_cell();
}
(slice, ((slice))) __gen_read_BlacklistWallet(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 43811734);
var v'wallet = sc_0~__tact_load_address();
return (sc_0, (v'wallet));
}
builder __gen_write_WithdrawalRequests(builder build_0, (cell, cell, int) v) inline {
var (v'addresses, v'amounts, v'n_requests) = v; var (v'addresses, v'amounts, v'n_requests) = v;
build_0 = build_0.store_dict(v'addresses); build_0 = build_0.store_dict(v'addresses);
build_0 = build_0.store_dict(v'amounts); build_0 = build_0.store_dict(v'amounts);
@ -189,26 +210,26 @@ builder __gen_write_WithdrawalRequests(builder build_0, (cell, cell, int) v) inl
return build_0; return build_0;
} }
(slice, ((cell, cell, int))) __gen_read_WithdrawalRequests(slice sc_0) inline_ref { (slice, ((cell, cell, int))) __gen_read_WithdrawalRequests(slice sc_0) inline {
var v'addresses = sc_0~load_dict(); var v'addresses = sc_0~load_dict();
var v'amounts = sc_0~load_dict(); var v'amounts = sc_0~load_dict();
var v'n_requests = sc_0~load_int(257); var v'n_requests = sc_0~load_int(257);
return (sc_0, (v'addresses, v'amounts, v'n_requests)); return (sc_0, (v'addresses, v'amounts, v'n_requests));
} }
(slice, ((int))) __gen_read_Deposit(slice sc_0) inline_ref { (slice, ((int))) __gen_read_Deposit(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 569292295); throw_unless(129, sc_0~load_uint(32) == 569292295);
var v'amount = sc_0~load_coins(); var v'amount = sc_0~load_coins();
return (sc_0, (v'amount)); return (sc_0, (v'amount));
} }
(slice, ((int))) __gen_read_Withdraw(slice sc_0) inline_ref { (slice, ((int))) __gen_read_Withdraw(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 1616450832); throw_unless(129, sc_0~load_uint(32) == 1616450832);
var v'amount = sc_0~load_int(257); var v'amount = sc_0~load_int(257);
return (sc_0, (v'amount)); return (sc_0, (v'amount));
} }
builder __gen_write_TONBWallet(builder build_0, (int, slice, slice, int, int, slice) v) inline_ref { builder __gen_write_TONBWallet(builder build_0, (int, slice, slice, int, int, slice) v) inline {
var (v'balance, v'owner, v'master, v'blacklisted, v'linker, v'linker_address) = v; var (v'balance, v'owner, v'master, v'blacklisted, v'linker, v'linker_address) = v;
build_0 = build_0.store_int(v'balance, 257); build_0 = build_0.store_int(v'balance, 257);
build_0 = __tact_store_address(build_0, v'owner); build_0 = __tact_store_address(build_0, v'owner);
@ -221,7 +242,7 @@ builder __gen_write_TONBWallet(builder build_0, (int, slice, slice, int, int, sl
return build_0; return build_0;
} }
builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline_ref { builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline {
var (v'index, v'master, v'owner, v'neighbor) = v; var (v'index, v'master, v'owner, v'neighbor) = v;
build_0 = build_0.store_int(v'index, 257); build_0 = build_0.store_int(v'index, 257);
build_0 = __tact_store_address(build_0, v'master); build_0 = __tact_store_address(build_0, v'master);
@ -232,7 +253,7 @@ builder __gen_write_Linker(builder build_0, (int, slice, slice, slice) v) inline
return build_0; return build_0;
} }
builder __gen_write_TONB(builder build_0, (int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) v) inline_ref { builder __gen_write_TONB(builder build_0, (int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) v) inline {
var (v'totalSupply, v'owner, v'content, v'mintable, v'first_linker, v'last_linker, v'n_linkers, v'staking_pool, (v'withdrawal_requests'addresses, v'withdrawal_requests'amounts, v'withdrawal_requests'n_requests)) = v; var (v'totalSupply, v'owner, v'content, v'mintable, v'first_linker, v'last_linker, v'n_linkers, v'staking_pool, (v'withdrawal_requests'addresses, v'withdrawal_requests'amounts, v'withdrawal_requests'n_requests)) = v;
build_0 = build_0.store_coins(v'totalSupply); build_0 = build_0.store_coins(v'totalSupply);
build_0 = __tact_store_address(build_0, v'owner); build_0 = __tact_store_address(build_0, v'owner);
@ -248,7 +269,7 @@ builder __gen_write_TONB(builder build_0, (int, slice, cell, int, slice, slice,
return build_0; return build_0;
} }
(slice, ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)))) __gen_read_TONB(slice sc_0) inline_ref { (slice, ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)))) __gen_read_TONB(slice sc_0) inline {
var v'totalSupply = sc_0~load_coins(); var v'totalSupply = sc_0~load_coins();
var v'owner = sc_0~__tact_load_address(); var v'owner = sc_0~__tact_load_address();
var v'content = sc_0~load_int(1) ? sc_0~load_ref() : null(); var v'content = sc_0~load_int(1) ? sc_0~load_ref() : null();
@ -272,18 +293,18 @@ _ __gen_Context_get_sender((int, slice, int, slice) v) inline {
return v'sender; return v'sender;
} }
(int, int, slice, cell, cell) __gen_JettonData_to_external(((int, int, slice, cell, cell)) v) { (int, int, slice, cell, cell) __gen_JettonData_to_external(((int, int, slice, cell, cell)) v) inline {
var (v'totalSupply, v'mintable, v'owner, v'content, v'walletCode) = v; var (v'totalSupply, v'mintable, v'owner, v'content, v'walletCode) = v;
return (v'totalSupply, v'mintable, v'owner, v'content, v'walletCode); return (v'totalSupply, v'mintable, v'owner, v'content, v'walletCode);
} }
(int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) __gen_load_TONB() inline_ref { (int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) __gen_load_TONB() inline {
slice sc = get_data().begin_parse(); slice sc = get_data().begin_parse();
__tact_context_sys = sc~load_ref(); __tact_context_sys = sc~load_ref();
return sc~__gen_read_TONB(); return sc~__gen_read_TONB();
} }
() __gen_store_TONB((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) v) impure inline_ref { () __gen_store_TONB((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) v) impure inline {
builder b = begin_cell(); builder b = begin_cell();
b = b.store_ref(__tact_context_sys); b = b.store_ref(__tact_context_sys);
b = __gen_write_TONB(b, v); b = __gen_write_TONB(b, v);
@ -293,25 +314,25 @@ _ __gen_Context_get_sender((int, slice, int, slice) v) inline {
;; String "Deposit" ;; String "Deposit"
slice __gen_str_228592480() asm "B{b5ee9c7241010101000900000e4465706f7369749721d513} B>boc <s PUSHSLICE"; slice __gen_str_228592480() asm "B{b5ee9c7241010101000900000e4465706f7369749721d513} B>boc <s PUSHSLICE";
cell $emptyCell() impure { cell $emptyCell() impure inline_ref {
return end_cell(begin_cell()); return end_cell(begin_cell());
} }
slice $__gen_Cell_asSlice(cell $self) impure { slice $__gen_Cell_asSlice(cell $self) impure inline_ref {
var ($self) = $self; var ($self) = $self;
return begin_parse($self); return begin_parse($self);
} }
slice $emptySlice() impure { slice $emptySlice() impure inline_ref {
return $__gen_Cell_asSlice($emptyCell()); return $__gen_Cell_asSlice($emptyCell());
} }
slice $contractAddress((cell, cell) $s) impure { slice $contractAddress((cell, cell) $s) impure inline_ref {
var (($s'code, $s'data)) = $s; var (($s'code, $s'data)) = $s;
return __tact_compute_contract_address(0, $s'code, $s'data); return __tact_compute_contract_address(0, $s'code, $s'data);
} }
() $send((int, slice, int, int, cell, cell, cell) $params) impure { () $send((int, slice, int, int, cell, cell, cell) $params) impure inline_ref {
var (($params'bounce, $params'to, $params'value, $params'mode, $params'body, $params'code, $params'data)) = $params; var (($params'bounce, $params'to, $params'value, $params'mode, $params'body, $params'code, $params'data)) = $params;
builder $b = begin_cell(); builder $b = begin_cell();
$b = store_int($b, 1, 2); $b = store_int($b, 1, 2);
@ -354,7 +375,7 @@ slice $contractAddress((cell, cell) $s) impure {
send_raw_message($c, $params'mode); send_raw_message($c, $params'mode);
} }
(int, slice, int, int, cell, cell, cell) $stakingDepositMessage(int $value, slice $pool) impure { (int, slice, int, int, cell, cell, cell) $stakingDepositMessage(int $value, slice $pool) impure inline_ref {
return (true, $pool, $value, 0, end_cell(store_slice(begin_cell(), __tact_str_to_slice(__gen_str_228592480()))), null(), null()); return (true, $pool, $value, 0, end_cell(store_slice(begin_cell(), __tact_str_to_slice(__gen_str_228592480()))), null(), null());
} }
@ -404,12 +425,12 @@ cell $__gen_Linker_init(cell sys', int $index, slice $owner, slice $master) {
return (mine, $__gen_Linker_init(sys, $index, $owner, $master)); return (mine, $__gen_Linker_init(sys, $index, $owner, $master));
} }
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), (cell, cell)) $__gen_TONB_getJettonWalletInit((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $address) impure { ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), (cell, cell)) $__gen_TONB_getJettonWalletInit((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $address) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), $__gen_TONBWallet_init_child(__tact_context_sys, my_address(), $address)); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), $__gen_TONBWallet_init_child(__tact_context_sys, my_address(), $address));
} }
slice $__gen_TONB_get_wallet_address((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $owner) impure { slice $__gen_TONB_get_wallet_address((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $owner) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($owner); var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($owner);
return $contractAddress(($winit'code, $winit'data)); return $contractAddress(($winit'code, $winit'data));
@ -422,7 +443,7 @@ _ $__gen_get_get_wallet_address(slice $$owner) method_id(103289) {
return res; return res;
} }
(int, int, slice, cell, cell) $__gen_TONB_get_jetton_data((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure { (int, int, slice, cell, cell) $__gen_TONB_get_jetton_data((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
cell $code = __gen_StateInit_get_code(($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit(my_address())); cell $code = __gen_StateInit_get_code(($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit(my_address()));
return ($self'totalSupply, $self'mintable, $self'owner, $self'content, $code); return ($self'totalSupply, $self'mintable, $self'owner, $self'content, $code);
@ -434,7 +455,7 @@ _ $__gen_get_get_jetton_data() method_id(106029) {
return __gen_JettonData_to_external(res); return __gen_JettonData_to_external(res);
} }
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_mint((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $to, int $amount, slice $responseAddress) impure { ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_mint((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $to, int $amount, slice $responseAddress) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
$self'totalSupply = ($self'totalSupply + $amount); $self'totalSupply = ($self'totalSupply + $amount);
var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($to); var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($to);
@ -445,11 +466,11 @@ _ $__gen_get_get_jetton_data() method_id(106029) {
$self'last_linker = $linker_address; $self'last_linker = $linker_address;
$self'n_linkers = ($self'n_linkers + 1); $self'n_linkers = ($self'n_linkers + 1);
cell $wallet_msg_body = __gen_writecell_TokenTransferInternal((0, $amount, my_address(), $responseAddress, 0, $emptySlice(), ($self'n_linkers - 1), $linker_address)); cell $wallet_msg_body = __gen_writecell_TokenTransferInternal((0, $amount, my_address(), $responseAddress, 0, $emptySlice(), ($self'n_linkers - 1), $linker_address));
$send((false, $walletAddress, 50000000, 0, $wallet_msg_body, $winit'code, $winit'data)); $send((false, $walletAddress, 65000000, 0, $wallet_msg_body, $winit'code, $winit'data));
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_burn((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $from, int $amount, slice $responseAddress) impure { ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_burn((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $from, int $amount, slice $responseAddress) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($from); var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($from);
slice $walletAddress = $contractAddress(($winit'code, $winit'data)); slice $walletAddress = $contractAddress(($winit'code, $winit'data));
@ -457,7 +478,7 @@ _ $__gen_get_get_jetton_data() method_id(106029) {
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_requireWallet((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $owner) impure { ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_requireWallet((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $owner) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get();
var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($owner); var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($owner);
@ -465,13 +486,13 @@ _ $__gen_get_get_jetton_data() method_id(106029) {
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_requireOwner((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure { ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_requireOwner((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
throw_unless(132, __tact_address_eq(__gen_Context_get_sender(__tact_context_get()), $self'owner)); throw_unless(132, __tact_address_eq(__gen_Context_get_sender(__tact_context_get()), $self'owner));
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
slice $__gen_TONB_owner((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure { slice $__gen_TONB_owner((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
return $self'owner; return $self'owner;
} }
@ -482,7 +503,7 @@ _ $__gen_get_owner() method_id(83229) {
return res; return res;
} }
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_sendStake((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure { ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_sendStake((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
if (null?($self'staking_pool)) { if (null?($self'staking_pool)) {
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
@ -495,7 +516,7 @@ _ $__gen_get_owner() method_id(83229) {
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_requestWithdrawal((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $address, int $value) impure { ((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_requestWithdrawal((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, slice $address, int $value) impure inline_ref {
var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self; var (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))) = $self;
$self'withdrawal_requests'addresses~__tact_dict_set_int_slice(257, $self'withdrawal_requests'n_requests, $address); $self'withdrawal_requests'addresses~__tact_dict_set_int_slice(257, $self'withdrawal_requests'n_requests, $address);
$self'withdrawal_requests'amounts~__tact_dict_set_int_int(257, $self'withdrawal_requests'n_requests, $value, 257); $self'withdrawal_requests'amounts~__tact_dict_set_int_int(257, $self'withdrawal_requests'n_requests, $value, 257);
@ -503,22 +524,22 @@ _ $__gen_get_owner() method_id(83229) {
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
(((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_Deposit((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (int) $msg) impure { (((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_Deposit((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (int) $msg) impure inline {
var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self; var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self;
var ($msg'amount) = $msg; var ($msg'amount) = $msg;
var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get();
throw_unless(32366, ($ctx'value >= (((10000000 + $msg'amount) + 20000000) + 50000000))); throw_unless(32366, ($ctx'value >= (((10000000 + $msg'amount) + 20000000) + 65000000)));
($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_mint($ctx'sender, $msg'amount, $ctx'sender); ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_mint($ctx'sender, $msg'amount, $ctx'sender);
($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_sendStake(); ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_sendStake();
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
(((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure { (((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure inline {
var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self; var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self;
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
(((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_Withdraw((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (int) $msg) impure { (((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_Withdraw((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (int) $msg) impure inline {
var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self; var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self;
var ($msg'amount) = $msg; var ($msg'amount) = $msg;
var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get();
@ -527,7 +548,7 @@ _ $__gen_get_owner() method_id(83229) {
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
(((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_TokenUpdateContent((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (cell) $msg) impure { (((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_TokenUpdateContent((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (cell) $msg) impure inline {
var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self; var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self;
var ($msg'content) = $msg; var ($msg'content) = $msg;
($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_requireOwner(); ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_requireOwner();
@ -535,7 +556,7 @@ _ $__gen_get_owner() method_id(83229) {
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
(((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_TokenBurnNotification((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (int, int, slice, slice) $msg) impure { (((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_TokenBurnNotification((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (int, int, slice, slice) $msg) impure inline {
var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self; var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self;
var ($msg'queryId, $msg'amount, $msg'owner, $msg'responseAddress) = $msg; var ($msg'queryId, $msg'amount, $msg'owner, $msg'responseAddress) = $msg;
($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_requireWallet($msg'owner); ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_requireWallet($msg'owner);
@ -554,13 +575,24 @@ _ $__gen_get_owner() method_id(83229) {
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_receive_comment_f7b1ab6077945b37370a1550574675180cf87df4cb047c869746812a83667d4c((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure { (((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int))), ()) $__gen_TONB_receive_BlacklistWallet((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self, (slice) $msg) impure inline {
var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self;
var ($msg'wallet) = $msg;
($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_requireOwner();
var ($winit'code, $winit'data) = ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))~$__gen_TONB_getJettonWalletInit($msg'wallet);
slice $walletAddress = $contractAddress(($winit'code, $winit'data));
$send((false, $walletAddress, 0, 64, __gen_writecell_BlacklistWallet(($msg'wallet)), null(), null()));
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
}
((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)), ()) $__gen_TONB_receive_comment_f7b1ab6077945b37370a1550574675180cf87df4cb047c869746812a83667d4c((int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) $self) impure inline {
var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self; var ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)) = $self;
int $i = 0; int $i = 0;
while (($i < $self'withdrawal_requests'n_requests)) { while (($i < $self'withdrawal_requests'n_requests)) {
$send((true, __tact_not_null(__tact_dict_get_int_slice($self'withdrawal_requests'addresses, 257, $i)), __tact_not_null(__tact_dict_get_int_int($self'withdrawal_requests'amounts, 257, $i, 257)), 0, null(), null(), null())); $send((true, __tact_not_null(__tact_dict_get_int_slice($self'withdrawal_requests'addresses, 257, $i)), __tact_not_null(__tact_dict_get_int_int($self'withdrawal_requests'amounts, 257, $i, 257)), 0, null(), null(), null()));
$i = ($i + 1); $i = ($i + 1);
} }
($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests) = (null(), null(), 0);
return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ()); return (($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)), ());
} }
@ -627,6 +659,15 @@ _ $__gen_get_owner() method_id(83229) {
return (); return ();
} }
;; Receive BlacklistWallet message
if (op == 43811734) {
var self = __gen_load_TONB();
var msg = in_msg~__gen_read_BlacklistWallet();
self~$__gen_TONB_receive_BlacklistWallet(msg);
__gen_store_TONB(self);
return ();
}
;; Text Receivers ;; Text Receivers
if (op == 0) { if (op == 0) {
var text_op = slice_hash(in_msg); var text_op = slice_hash(in_msg);
@ -653,5 +694,5 @@ _ supported_interfaces() method_id {
} }
_ get_abi_ipfs() { _ get_abi_ipfs() {
return "ipfs://QmUMBKY4L4n4GyTq3MSncGQ8X3nLYqomdtcYYcg1dzU2iS"; return "ipfs://QmdLbHDcwcbEDecCvHvgj8D5v6twD5qHGPzRoJxrQn4XEr";
} }

256
sources/output/jetton_TONB.code.fif

@ -25,6 +25,9 @@ PROGRAM{
DECLPROC __gen_read_TokenUpdateContent DECLPROC __gen_read_TokenUpdateContent
DECLPROC __gen_write_SetLinkerNeighbor DECLPROC __gen_write_SetLinkerNeighbor
DECLPROC __gen_writecell_SetLinkerNeighbor DECLPROC __gen_writecell_SetLinkerNeighbor
DECLPROC __gen_write_BlacklistWallet
DECLPROC __gen_writecell_BlacklistWallet
DECLPROC __gen_read_BlacklistWallet
DECLPROC __gen_write_WithdrawalRequests DECLPROC __gen_write_WithdrawalRequests
DECLPROC __gen_read_WithdrawalRequests DECLPROC __gen_read_WithdrawalRequests
DECLPROC __gen_read_Deposit DECLPROC __gen_read_Deposit
@ -66,6 +69,7 @@ PROGRAM{
DECLPROC $__gen_TONB_receive_Withdraw DECLPROC $__gen_TONB_receive_Withdraw
DECLPROC $__gen_TONB_receive_TokenUpdateContent DECLPROC $__gen_TONB_receive_TokenUpdateContent
DECLPROC $__gen_TONB_receive_TokenBurnNotification DECLPROC $__gen_TONB_receive_TokenBurnNotification
DECLPROC $__gen_TONB_receive_BlacklistWallet
DECLPROC $__gen_TONB_receive_comment_f7b1ab6077945b37370a1550574675180cf87df4cb047c869746812a83667d4c DECLPROC $__gen_TONB_receive_comment_f7b1ab6077945b37370a1550574675180cf87df4cb047c869746812a83667d4c
DECLPROC recv_internal DECLPROC recv_internal
113617 DECLMETHOD supported_interfaces 113617 DECLMETHOD supported_interfaces
@ -76,7 +80,7 @@ PROGRAM{
BALANCE BALANCE
FIRST FIRST
}> }>
__tact_not_null PROC:<{ __tact_not_null PROCINLINE:<{
DUP DUP
ISNULL ISNULL
128 THROWIF 128 THROWIF
@ -270,7 +274,7 @@ PROGRAM{
__gen_write_TokenTransferInternal INLINECALLDICT __gen_write_TokenTransferInternal INLINECALLDICT
ENDC ENDC
}> }>
__gen_write_TokenBurn PROCREF:<{ __gen_write_TokenBurn PROCINLINE:<{
1499400124 PUSHINT 1499400124 PUSHINT
s0 s5 XCHG2 s0 s5 XCHG2
32 STU 32 STU
@ -289,7 +293,7 @@ PROGRAM{
__gen_write_TokenBurn INLINECALLDICT __gen_write_TokenBurn INLINECALLDICT
ENDC ENDC
}> }>
__gen_read_TokenBurnNotification PROCREF:<{ __gen_read_TokenBurnNotification PROCINLINE:<{
32 LDU 32 LDU
SWAP SWAP
2078119902 PUSHINT 2078119902 PUSHINT
@ -303,7 +307,7 @@ PROGRAM{
s1 s4 XCHG s1 s4 XCHG
s3 s3 s0 XCHG3 s3 s3 s0 XCHG3
}> }>
__gen_read_TokenUpdateContent PROCREF:<{ __gen_read_TokenUpdateContent PROCINLINE:<{
32 LDU 32 LDU
SWAP SWAP
201882270 PUSHINT 201882270 PUSHINT
@ -319,7 +323,7 @@ PROGRAM{
}> }>
SWAP SWAP
}> }>
__gen_write_SetLinkerNeighbor PROCREF:<{ __gen_write_SetLinkerNeighbor PROCINLINE:<{
3019699393 PUSHINT 3019699393 PUSHINT
ROT ROT
32 STU 32 STU
@ -332,21 +336,42 @@ PROGRAM{
__gen_write_SetLinkerNeighbor INLINECALLDICT __gen_write_SetLinkerNeighbor INLINECALLDICT
ENDC ENDC
}> }>
__gen_write_WithdrawalRequests PROCREF:<{ __gen_write_BlacklistWallet PROCINLINE:<{
43811734 PUSHINT
ROT
32 STU
SWAP
__tact_store_address INLINECALLDICT
}>
__gen_writecell_BlacklistWallet PROCREF:<{
NEWC
SWAP
__gen_write_BlacklistWallet INLINECALLDICT
ENDC
}>
__gen_read_BlacklistWallet PROCINLINE:<{
32 LDU
SWAP
43811734 PUSHINT
EQUAL
129 THROWIFNOT
__tact_load_address INLINECALLDICT
}>
__gen_write_WithdrawalRequests PROCINLINE:<{
s2 s3 XCHG2 s2 s3 XCHG2
STDICT STDICT
STDICT STDICT
257 PUSHINT 257 PUSHINT
STIX STIX
}> }>
__gen_read_WithdrawalRequests PROCREF:<{ __gen_read_WithdrawalRequests PROCINLINE:<{
LDDICT LDDICT
LDDICT LDDICT
257 PUSHINT 257 PUSHINT
LDIX LDIX
3 -ROLL 3 -ROLL
}> }>
__gen_read_Deposit PROCREF:<{ __gen_read_Deposit PROCINLINE:<{
32 LDU 32 LDU
SWAP SWAP
569292295 PUSHINT 569292295 PUSHINT
@ -355,7 +380,7 @@ PROGRAM{
LDGRAMS LDGRAMS
SWAP SWAP
}> }>
__gen_read_Withdraw PROCREF:<{ __gen_read_Withdraw PROCINLINE:<{
32 LDU 32 LDU
SWAP SWAP
1616450832 PUSHINT 1616450832 PUSHINT
@ -365,7 +390,7 @@ PROGRAM{
LDIX LDIX
SWAP SWAP
}> }>
__gen_write_TONBWallet PROCREF:<{ __gen_write_TONBWallet PROCINLINE:<{
s5 s6 XCHG2 s5 s6 XCHG2
257 PUSHINT 257 PUSHINT
STIX STIX
@ -397,7 +422,7 @@ PROGRAM{
SWAP SWAP
STREF STREF
}> }>
__gen_write_Linker PROCREF:<{ __gen_write_Linker PROCINLINE:<{
s3 s4 XCHG2 s3 s4 XCHG2
257 PUSHINT 257 PUSHINT
STIX STIX
@ -412,7 +437,7 @@ PROGRAM{
SWAP SWAP
STREF STREF
}> }>
__gen_write_TONB PROCREF:<{ __gen_write_TONB PROCINLINE:<{
s11 s10 XCHG2 s11 s10 XCHG2
STGRAMS STGRAMS
s0 s8 XCHG2 s0 s8 XCHG2
@ -450,7 +475,7 @@ PROGRAM{
SWAP SWAP
STREF STREF
}> }>
__gen_read_TONB PROCREF:<{ __gen_read_TONB PROCINLINE:<{
LDGRAMS LDGRAMS
__tact_load_address INLINECALLDICT __tact_load_address INLINECALLDICT
SWAP SWAP
@ -491,9 +516,9 @@ PROGRAM{
s2 s3 XCHG s2 s3 XCHG
3 BLKDROP 3 BLKDROP
}> }>
__gen_JettonData_to_external PROC:<{ __gen_JettonData_to_external PROCINLINE:<{
}> }>
__gen_load_TONB PROCREF:<{ __gen_load_TONB PROCINLINE:<{
c4 PUSH c4 PUSH
CTOS CTOS
LDREF LDREF
@ -502,7 +527,7 @@ PROGRAM{
__gen_read_TONB INLINECALLDICT __gen_read_TONB INLINECALLDICT
1 11 BLKDROP2 1 11 BLKDROP2
}> }>
__gen_store_TONB PROCREF:<{ __gen_store_TONB PROCINLINE:<{
NEWC NEWC
__tact_context_sys GETGLOB __tact_context_sys GETGLOB
SWAP SWAP
@ -512,23 +537,23 @@ PROGRAM{
ENDC ENDC
c4 POP c4 POP
}> }>
$emptyCell PROC:<{ $emptyCell PROCREF:<{
NEWC NEWC
ENDC ENDC
}> }>
$__gen_Cell_asSlice PROC:<{ $__gen_Cell_asSlice PROCREF:<{
CTOS CTOS
}> }>
$emptySlice PROC:<{ $emptySlice PROCREF:<{
$emptyCell CALLDICT $emptyCell INLINECALLDICT
$__gen_Cell_asSlice CALLDICT $__gen_Cell_asSlice INLINECALLDICT
}> }>
$contractAddress PROC:<{ $contractAddress PROCREF:<{
0 PUSHINT 0 PUSHINT
-ROT -ROT
__tact_compute_contract_address INLINECALLDICT __tact_compute_contract_address INLINECALLDICT
}> }>
$send PROC:<{ $send PROCREF:<{
NEWC NEWC
1 PUSHINT 1 PUSHINT
SWAP SWAP
@ -567,7 +592,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
s0 s4 XCHG s0 s4 XCHG
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
s0 s4 XCHG2 s0 s4 XCHG2
STREF STREF
}>ELSE<{ }>ELSE<{
@ -583,7 +608,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
s0 s4 XCHG s0 s4 XCHG
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
s0 s4 XCHG2 s0 s4 XCHG2
STREF STREF
}>ELSE<{ }>ELSE<{
@ -615,7 +640,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
SWAP SWAP
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
SWAP SWAP
STREF STREF
}>ELSE<{ }>ELSE<{
@ -627,7 +652,7 @@ PROGRAM{
SWAP SWAP
SENDRAWMSG SENDRAWMSG
}> }>
$stakingDepositMessage PROC:<{ $stakingDepositMessage PROCREF:<{
TRUE TRUE
0 PUSHINT 0 PUSHINT
NEWC NEWC
@ -700,47 +725,47 @@ PROGRAM{
s0 s4 XCHG s0 s4 XCHG
$__gen_Linker_init CALLDICT $__gen_Linker_init CALLDICT
}> }>
$__gen_TONB_getJettonWalletInit PROC:<{ $__gen_TONB_getJettonWalletInit PROCREF:<{
__tact_context_sys GETGLOB __tact_context_sys GETGLOB
MYADDR MYADDR
ROT ROT
$__gen_TONBWallet_init_child CALLDICT $__gen_TONBWallet_init_child CALLDICT
}> }>
$__gen_TONB_get_wallet_address PROC:<{ $__gen_TONB_get_wallet_address PROCREF:<{
$__gen_TONB_getJettonWalletInit CALLDICT $__gen_TONB_getJettonWalletInit INLINECALLDICT
11 2 BLKDROP2 11 2 BLKDROP2
$contractAddress CALLDICT $contractAddress INLINECALLDICT
}> }>
$__gen_get_get_wallet_address PROC:<{ $__gen_get_get_wallet_address PROC:<{
__gen_load_TONB INLINECALLDICT __gen_load_TONB INLINECALLDICT
11 ROLL 11 ROLL
$__gen_TONB_get_wallet_address CALLDICT $__gen_TONB_get_wallet_address INLINECALLDICT
}> }>
$__gen_TONB_get_jetton_data PROC:<{ $__gen_TONB_get_jetton_data PROCREF:<{
MYADDR MYADDR
$__gen_TONB_getJettonWalletInit CALLDICT $__gen_TONB_getJettonWalletInit INLINECALLDICT
7 2 BLKDROP2 7 2 BLKDROP2
__gen_StateInit_get_code INLINECALLDICT __gen_StateInit_get_code INLINECALLDICT
s3 s3 s0 XCHG3 s3 s3 s0 XCHG3
}> }>
$__gen_get_get_jetton_data PROC:<{ $__gen_get_get_jetton_data PROC:<{
__gen_load_TONB INLINECALLDICT __gen_load_TONB INLINECALLDICT
$__gen_TONB_get_jetton_data CALLDICT $__gen_TONB_get_jetton_data INLINECALLDICT
__gen_JettonData_to_external CALLDICT __gen_JettonData_to_external INLINECALLDICT
}> }>
$__gen_TONB_mint PROC:<{ $__gen_TONB_mint PROCREF:<{
s13 s1 XCPU s13 s1 XCPU
ADD ADD
11 2 BLKSWAP 11 2 BLKSWAP
$__gen_TONB_getJettonWalletInit CALLDICT $__gen_TONB_getJettonWalletInit INLINECALLDICT
2DUP 2DUP
$contractAddress CALLDICT $contractAddress INLINECALLDICT
__tact_context_sys GETGLOB __tact_context_sys GETGLOB
MYADDR MYADDR
s9 s2 s(-2) PU2XC s9 s2 s(-2) PU2XC
$__gen_Linker_init_child CALLDICT $__gen_Linker_init_child CALLDICT
2DUP 2DUP
$contractAddress CALLDICT $contractAddress INLINECALLDICT
FALSE FALSE
20000000 PUSHINT 20000000 PUSHINT
0 PUSHINT 0 PUSHINT
@ -751,14 +776,14 @@ PROGRAM{
s4 s1 s5 XCHG3 s4 s1 s5 XCHG3
s3 s15 XCHG s3 s15 XCHG
s1 s15 s0 XCHG3 s1 s15 s0 XCHG3
$send CALLDICT $send INLINECALLDICT
s8 PUSH s8 PUSH
s0 s8 XCHG s0 s8 XCHG
INC INC
0 PUSHINT 0 PUSHINT
MYADDR MYADDR
OVER OVER
$emptySlice CALLDICT $emptySlice INLINECALLDICT
s4 PUSH s4 PUSH
DEC DEC
s4 s7 XCHG s4 s7 XCHG
@ -771,12 +796,12 @@ PROGRAM{
FALSE FALSE
s0 s4 XCHG s0 s4 XCHG
s3 s14 XCHG s3 s14 XCHG
50000000 PUSHINT 65000000 PUSHINT
s0 s3 XCHG s0 s3 XCHG
0 PUSHINT 0 PUSHINT
s3 s1 s3 XCHG3 s3 s1 s3 XCHG3
s0 17 s() XCHG s0 17 s() XCHG
$send CALLDICT $send INLINECALLDICT
s8 s10 XCHG s8 s10 XCHG
s7 s9 XCHG s7 s9 XCHG
s6 s8 XCHG s6 s8 XCHG
@ -785,7 +810,7 @@ PROGRAM{
s0 s3 s5 XCHG3 s0 s3 s5 XCHG3
s1 s4 XCHG s1 s4 XCHG
}> }>
$__gen_TONB_burn PROC:<{ $__gen_TONB_burn PROCREF:<{
s10 s13 XCHG s10 s13 XCHG
s9 s12 XCHG s9 s12 XCHG
s8 s11 XCHG s8 s11 XCHG
@ -796,9 +821,9 @@ PROGRAM{
s3 s12 XCHG s3 s12 XCHG
s11 s13 s12 XCHG3 s11 s13 s12 XCHG3
s11 PUSH s11 PUSH
$__gen_TONB_getJettonWalletInit CALLDICT $__gen_TONB_getJettonWalletInit INLINECALLDICT
2DUP 2DUP
$contractAddress CALLDICT $contractAddress INLINECALLDICT
FALSE FALSE
0 PUSHINT 0 PUSHINT
64 PUSHINT 64 PUSHINT
@ -812,42 +837,42 @@ PROGRAM{
s4 17 s() XCHG s4 17 s() XCHG
s3 s15 XCHG s3 s15 XCHG
s15 s2 XCHG2 s15 s2 XCHG2
$send CALLDICT $send INLINECALLDICT
s7 s10 XCHG s7 s10 XCHG
3 7 BLKSWAP 3 7 BLKSWAP
}> }>
$__gen_TONB_requireWallet PROC:<{ $__gen_TONB_requireWallet PROCREF:<{
__tact_context_get INLINECALLDICT __tact_context_get INLINECALLDICT
s2 s3 XCHG s2 s3 XCHG
3 BLKDROP 3 BLKDROP
12 -ROLL 12 -ROLL
$__gen_TONB_getJettonWalletInit CALLDICT $__gen_TONB_getJettonWalletInit INLINECALLDICT
SWAP SWAP
4429 PUSHINT 4429 PUSHINT
s0 s2 XCHG s0 s2 XCHG
$contractAddress CALLDICT $contractAddress INLINECALLDICT
s0 s13 XCHG2 s0 s13 XCHG2
__tact_address_eq INLINECALLDICT __tact_address_eq INLINECALLDICT
s1 s12 XCHG s1 s12 XCHG
THROWANYIFNOT THROWANYIFNOT
10 ROLL 10 ROLL
}> }>
$__gen_TONB_requireOwner PROC:<{ $__gen_TONB_requireOwner PROCREF:<{
__tact_context_get INLINECALLDICT __tact_context_get INLINECALLDICT
__gen_Context_get_sender INLINECALLDICT __gen_Context_get_sender INLINECALLDICT
s10 PUSH s10 PUSH
__tact_address_eq INLINECALLDICT __tact_address_eq INLINECALLDICT
132 THROWIFNOT 132 THROWIFNOT
}> }>
$__gen_TONB_owner PROC:<{ $__gen_TONB_owner PROCREF:<{
s9 s10 XCHG s9 s10 XCHG
10 BLKDROP 10 BLKDROP
}> }>
$__gen_get_owner PROC:<{ $__gen_get_owner PROC:<{
__gen_load_TONB INLINECALLDICT __gen_load_TONB INLINECALLDICT
$__gen_TONB_owner CALLDICT $__gen_TONB_owner INLINECALLDICT
}> }>
$__gen_TONB_sendStake PROC:<{ $__gen_TONB_sendStake PROCREF:<{
s3 PUSH s3 PUSH
ISNULL ISNULL
IFJMP:<{ IFJMP:<{
@ -862,11 +887,11 @@ PROGRAM{
DROP DROP
}> }>
s4 PUSH s4 PUSH
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
$stakingDepositMessage CALLDICT $stakingDepositMessage INLINECALLDICT
$send CALLDICT $send INLINECALLDICT
}> }>
$__gen_TONB_requestWithdrawal PROC:<{ $__gen_TONB_requestWithdrawal PROCREF:<{
s1 s4 XCHG s1 s4 XCHG
257 PUSHINT 257 PUSHINT
s0 s3 s5 XCPUXC s0 s3 s5 XCPUXC
@ -880,7 +905,7 @@ PROGRAM{
SWAP SWAP
INC INC
}> }>
$__gen_TONB_receive_Deposit PROC:<{ $__gen_TONB_receive_Deposit PROCINLINE:<{
__tact_context_get INLINECALLDICT __tact_context_get INLINECALLDICT
DROP DROP
s2 POP s2 POP
@ -890,19 +915,19 @@ PROGRAM{
ADD ADD
20000000 PUSHINT 20000000 PUSHINT
ADD ADD
50000000 PUSHINT 65000000 PUSHINT
ADD ADD
s1 s3 XCHG s1 s3 XCHG
GEQ GEQ
s1 s2 XCHG s1 s2 XCHG
THROWANYIFNOT THROWANYIFNOT
TUCK TUCK
$__gen_TONB_mint CALLDICT $__gen_TONB_mint INLINECALLDICT
$__gen_TONB_sendStake CALLDICT $__gen_TONB_sendStake INLINECALLDICT
}> }>
$__gen_TONB_receive PROC:<{ $__gen_TONB_receive PROCINLINE:<{
}> }>
$__gen_TONB_receive_Withdraw PROC:<{ $__gen_TONB_receive_Withdraw PROCINLINE:<{
__tact_context_get INLINECALLDICT __tact_context_get INLINECALLDICT
DROP DROP
6384 PUSHINT 6384 PUSHINT
@ -912,17 +937,17 @@ PROGRAM{
s1 s2 XCHG s1 s2 XCHG
THROWANYIFNOT THROWANYIFNOT
TUCK TUCK
$__gen_TONB_burn CALLDICT $__gen_TONB_burn INLINECALLDICT
}> }>
$__gen_TONB_receive_TokenUpdateContent PROC:<{ $__gen_TONB_receive_TokenUpdateContent PROCINLINE:<{
11 -ROLL 11 -ROLL
$__gen_TONB_requireOwner CALLDICT $__gen_TONB_requireOwner INLINECALLDICT
s8 POP s8 POP
s9 s10 XCHG s9 s10 XCHG
s8 s9 XCHG s8 s9 XCHG
7 ROLL 7 ROLL
}> }>
$__gen_TONB_receive_TokenBurnNotification PROC:<{ $__gen_TONB_receive_TokenBurnNotification PROCINLINE:<{
DROP DROP
s2 POP s2 POP
s10 s12 XCHG s10 s12 XCHG
@ -934,7 +959,7 @@ PROGRAM{
s3 s11 XCHG s3 s11 XCHG
s12 s11 s12 XCHG3 s12 s11 s12 XCHG3
s11 PUSH s11 PUSH
$__gen_TONB_requireWallet CALLDICT $__gen_TONB_requireWallet INLINECALLDICT
s10 s12 XCPU s10 s12 XCPU
SUB SUB
__tact_my_balance INLINECALLDICT __tact_my_balance INLINECALLDICT
@ -944,7 +969,7 @@ PROGRAM{
SUB SUB
s0 s13 PUSH2 s0 s13 PUSH2
LESS LESS
IFJMP:<{ IF:<{
s1 s13 XCHG s1 s13 XCHG
SUB SUB
FALSE FALSE
@ -956,12 +981,12 @@ PROGRAM{
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
$send CALLDICT $send INLINECALLDICT
0 PUSHINT 0 PUSHINT
MYADDR MYADDR
MYADDR MYADDR
s2 PUSH s2 PUSH
$emptySlice CALLDICT $emptySlice INLINECALLDICT
s5 PUSH s5 PUSH
4 -ROLL 4 -ROLL
PUSHNULL PUSHNULL
@ -973,7 +998,7 @@ PROGRAM{
s11 PUSH s11 PUSH
21 s() PUSH 21 s() PUSH
23 s() PUSH 23 s() PUSH
$__gen_TONB_get_wallet_address CALLDICT $__gen_TONB_get_wallet_address INLINECALLDICT
FALSE FALSE
s0 s2 XCHG s0 s2 XCHG
0 PUSHINT 0 PUSHINT
@ -981,7 +1006,7 @@ PROGRAM{
ROT ROT
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
$send CALLDICT $send INLINECALLDICT
s9 s11 XCHG s9 s11 XCHG
s8 s10 XCHG s8 s10 XCHG
s7 s9 XCHG s7 s9 XCHG
@ -990,20 +1015,39 @@ PROGRAM{
s4 s6 XCHG s4 s6 XCHG
s3 s5 XCHG s3 s5 XCHG
s4 s3 s0 XCHG3 s4 s3 s0 XCHG3
$__gen_TONB_requestWithdrawal CALLDICT $__gen_TONB_requestWithdrawal INLINECALLDICT
}>ELSE<{
DROP
FALSE
s0 s12 s13 XCHG3
0 PUSHINT
PUSHNULL
PUSHNULL
PUSHNULL
$send INLINECALLDICT
s9 s10 XCHG
2 8 BLKSWAP
}> }>
DROP }>
$__gen_TONB_receive_BlacklistWallet PROCINLINE:<{
11 -ROLL
$__gen_TONB_requireOwner INLINECALLDICT
s11 PUSH
$__gen_TONB_getJettonWalletInit INLINECALLDICT
$contractAddress INLINECALLDICT
FALSE FALSE
s0 s12 s13 XCHG3
0 PUSHINT 0 PUSHINT
64 PUSHINT
s0 s15 XCHG
__gen_writecell_BlacklistWallet INLINECALLDICT
s1 s4 s0 XCHG3
s1 s15 XCHG
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
PUSHNULL $send INLINECALLDICT
$send CALLDICT 10 ROLL
s9 s10 XCHG
2 8 BLKSWAP
}> }>
$__gen_TONB_receive_comment_f7b1ab6077945b37370a1550574675180cf87df4cb047c869746812a83667d4c PROC:<{ $__gen_TONB_receive_comment_f7b1ab6077945b37370a1550574675180cf87df4cb047c869746812a83667d4c PROCINLINE:<{
0 PUSHINT 0 PUSHINT
WHILE:<{ WHILE:<{
s0 s1 PUSH2 s0 s1 PUSH2
@ -1014,20 +1058,23 @@ PROGRAM{
257 PUSHINT 257 PUSHINT
s3 PUSH s3 PUSH
__tact_dict_get_int_slice INLINECALLDICT __tact_dict_get_int_slice INLINECALLDICT
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
257 PUSHINT 257 PUSHINT
s5 s(-1) s(-1) PUXCPU s5 s(-1) s(-1) PUXCPU
s5 s(-1) PUXC s5 s(-1) PUXC
__tact_dict_get_int_int INLINECALLDICT __tact_dict_get_int_int INLINECALLDICT
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
0 PUSHINT 0 PUSHINT
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
$send CALLDICT $send INLINECALLDICT
INC INC
}> }>
DROP 4 BLKDROP
PUSHNULL
PUSHNULL
0 PUSHINT
}> }>
recv_internal PROC:<{ recv_internal PROC:<{
c2 SAVE c2 SAVE
@ -1081,7 +1128,7 @@ PROGRAM{
s4 s5 XCHG s4 s5 XCHG
s3 s4 XCHG s3 s4 XCHG
s1 s3 s0 XCHG3 s1 s3 s0 XCHG3
$__gen_TONB_receive_Deposit CALLDICT $__gen_TONB_receive_Deposit INLINECALLDICT
__gen_store_TONB INLINECALLDICT __gen_store_TONB INLINECALLDICT
}> }>
DUP DUP
@ -1093,7 +1140,7 @@ PROGRAM{
IFJMP:<{ IFJMP:<{
2DROP 2DROP
__gen_load_TONB INLINECALLDICT __gen_load_TONB INLINECALLDICT
$__gen_TONB_receive CALLDICT $__gen_TONB_receive INLINECALLDICT
__gen_store_TONB INLINECALLDICT __gen_store_TONB INLINECALLDICT
}> }>
DUP DUP
@ -1114,7 +1161,7 @@ PROGRAM{
s4 s5 XCHG s4 s5 XCHG
s3 s4 XCHG s3 s4 XCHG
s1 s3 s0 XCHG3 s1 s3 s0 XCHG3
$__gen_TONB_receive_Withdraw CALLDICT $__gen_TONB_receive_Withdraw INLINECALLDICT
__gen_store_TONB INLINECALLDICT __gen_store_TONB INLINECALLDICT
}> }>
DUP DUP
@ -1135,7 +1182,7 @@ PROGRAM{
s4 s5 XCHG s4 s5 XCHG
s3 s4 XCHG s3 s4 XCHG
s1 s3 s0 XCHG3 s1 s3 s0 XCHG3
$__gen_TONB_receive_TokenUpdateContent CALLDICT $__gen_TONB_receive_TokenUpdateContent INLINECALLDICT
__gen_store_TONB INLINECALLDICT __gen_store_TONB INLINECALLDICT
}> }>
DUP DUP
@ -1158,7 +1205,28 @@ PROGRAM{
s5 s6 XCHG s5 s6 XCHG
s4 s5 XCHG s4 s5 XCHG
3 ROLL 3 ROLL
$__gen_TONB_receive_TokenBurnNotification CALLDICT $__gen_TONB_receive_TokenBurnNotification INLINECALLDICT
__gen_store_TONB INLINECALLDICT
}>
DUP
43811734 PUSHINT
EQUAL
IFJMP:<{
DROP
__gen_load_TONB INLINECALLDICT
s0 s11 XCHG
__gen_read_BlacklistWallet INLINECALLDICT
NIP
s10 s11 XCHG
s9 s10 XCHG
s8 s9 XCHG
s7 s8 XCHG
s6 s7 XCHG
s5 s6 XCHG
s4 s5 XCHG
s3 s4 XCHG
s1 s3 s0 XCHG3
$__gen_TONB_receive_BlacklistWallet INLINECALLDICT
__gen_store_TONB INLINECALLDICT __gen_store_TONB INLINECALLDICT
}> }>
0 EQINT 0 EQINT
@ -1168,7 +1236,7 @@ PROGRAM{
EQUAL EQUAL
IFJMP:<{ IFJMP:<{
__gen_load_TONB INLINECALLDICT __gen_load_TONB INLINECALLDICT
$__gen_TONB_receive_comment_f7b1ab6077945b37370a1550574675180cf87df4cb047c869746812a83667d4c CALLDICT $__gen_TONB_receive_comment_f7b1ab6077945b37370a1550574675180cf87df4cb047c869746812a83667d4c INLINECALLDICT
__gen_store_TONB INLINECALLDICT __gen_store_TONB INLINECALLDICT
RETALT RETALT
}> }>
@ -1184,6 +1252,6 @@ PROGRAM{
86142586315491086060343270784266291122 PUSHINT 86142586315491086060343270784266291122 PUSHINT
}> }>
get_abi_ipfs PROC:<{ get_abi_ipfs PROC:<{
x{697066733a2f2f516d554d424b59344c346e3447795471334d536e6347513858336e4c59716f6d6474635959636731647a55326953} PUSHSLICE x{697066733a2f2f516d644c624844637763624544656343764876676a384435763674774435714847507a526f4a7872516e34584572} PUSHSLICE
}> }>
}END>c }END>c

5229
sources/output/jetton_TONB.code.rev.fif

File diff suppressed because it is too large Load Diff

BIN
sources/output/jetton_TONB.init.boc

Binary file not shown.

9
sources/output/jetton_TONB.init.fc

@ -1,3 +1,7 @@
#pragma version =0.4.1;
#pragma allow-post-modification;
#pragma compute-asm-ltr;
() __tact_verify_address(slice address) inline { () __tact_verify_address(slice address) inline {
throw_unless(136, address.slice_bits() != 267); throw_unless(136, address.slice_bits() != 267);
} }
@ -17,7 +21,7 @@ builder __tact_store_address_opt(builder b, slice address) inline {
} }
} }
builder __gen_write_WithdrawalRequests(builder build_0, (cell, cell, int) v) inline_ref { builder __gen_write_WithdrawalRequests(builder build_0, (cell, cell, int) v) inline {
var (v'addresses, v'amounts, v'n_requests) = v; var (v'addresses, v'amounts, v'n_requests) = v;
build_0 = build_0.store_dict(v'addresses); build_0 = build_0.store_dict(v'addresses);
build_0 = build_0.store_dict(v'amounts); build_0 = build_0.store_dict(v'amounts);
@ -25,7 +29,7 @@ builder __gen_write_WithdrawalRequests(builder build_0, (cell, cell, int) v) inl
return build_0; return build_0;
} }
builder __gen_write_TONB(builder build_0, (int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) v) inline_ref { builder __gen_write_TONB(builder build_0, (int, slice, cell, int, slice, slice, int, slice, (cell, cell, int)) v) inline {
var (v'totalSupply, v'owner, v'content, v'mintable, v'first_linker, v'last_linker, v'n_linkers, v'staking_pool, (v'withdrawal_requests'addresses, v'withdrawal_requests'amounts, v'withdrawal_requests'n_requests)) = v; var (v'totalSupply, v'owner, v'content, v'mintable, v'first_linker, v'last_linker, v'n_linkers, v'staking_pool, (v'withdrawal_requests'addresses, v'withdrawal_requests'amounts, v'withdrawal_requests'n_requests)) = v;
build_0 = build_0.store_coins(v'totalSupply); build_0 = build_0.store_coins(v'totalSupply);
build_0 = __tact_store_address(build_0, v'owner); build_0 = __tact_store_address(build_0, v'owner);
@ -47,6 +51,7 @@ cell $__gen_TONB_init(cell sys', slice $owner, cell $content) {
$self'owner = $owner; $self'owner = $owner;
$self'mintable = true; $self'mintable = true;
$self'content = $content; $self'content = $content;
($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests) = (null(), null(), 0);
var b' = begin_cell(); var b' = begin_cell();
b' = b'.store_ref(sys'); b' = b'.store_ref(sys');
b' = __gen_write_TONB(b', ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests))); b' = __gen_write_TONB(b', ($self'totalSupply, $self'owner, $self'content, $self'mintable, $self'first_linker, $self'last_linker, $self'n_linkers, $self'staking_pool, ($self'withdrawal_requests'addresses, $self'withdrawal_requests'amounts, $self'withdrawal_requests'n_requests)));

21
sources/output/jetton_TONB.init.fif

@ -28,14 +28,14 @@ PROGRAM{
__tact_store_address INLINECALLDICT __tact_store_address INLINECALLDICT
}> }>
}> }>
__gen_write_WithdrawalRequests PROCREF:<{ __gen_write_WithdrawalRequests PROCINLINE:<{
s2 s3 XCHG2 s2 s3 XCHG2
STDICT STDICT
STDICT STDICT
257 PUSHINT 257 PUSHINT
STIX STIX
}> }>
__gen_write_TONB PROCREF:<{ __gen_write_TONB PROCINLINE:<{
s11 s10 XCHG2 s11 s10 XCHG2
STGRAMS STGRAMS
s0 s8 XCHG2 s0 s8 XCHG2
@ -78,19 +78,20 @@ PROGRAM{
PUSHNULL PUSHNULL
0 PUSHINT 0 PUSHINT
PUSHNULL PUSHNULL
PUSHNULL OVER
s4 PUSH
TRUE TRUE
PUSHNULL
PUSHNULL
s3 PUSH
s0 s11 XCHG s0 s11 XCHG
NEWC NEWC
STREF STREF
s0 s11 XCHG s0 s11 XCHG
s0 s7 XCHG s4 s10 XCHG
s10 s5 XCHG2 s4 s9 XCHG
s9 s3 XCHG2 s4 s8 XCHG
s0 s8 XCHG2 5 3 REVERSE
s0 s6 XCHG s3 s5 XCHG
s4 s1 s4 XCHG3
__gen_write_TONB INLINECALLDICT __gen_write_TONB INLINECALLDICT
ENDC ENDC
}> }>

159
sources/output/jetton_TONB.init.rev.fif

@ -7,98 +7,95 @@ SETCP0
PUSHNULL PUSHNULL
0 PUSHINT 0 PUSHINT
PUSHNULL PUSHNULL
PUSHNULL s1 PUSH
s4 PUSH
-1 PUSHINT -1 PUSHINT
PUSHNULL
PUSHNULL
s3 PUSH
s0 s11 XCHG s0 s11 XCHG
NEWC NEWC
STREF STREF
s0 s11 XCHG s0 s11 XCHG
s0 s7 XCHG s4 s10 XCHG
s10 s5 XCHG2 s4 s9 XCHG
s9 s3 XCHG2 s4 s8 XCHG
5 3 REVERSE
s3 s5 XCHG
s11 s10 XCHG2
STGRAMS
s0 s8 XCHG2 s0 s8 XCHG2
s0 s6 XCHG STSLICER
s4 s1 s4 XCHG3 s6 PUSH
ISNULL
NOT
<{ <{
s11 s10 XCHG2 -1 PUSHINT
STGRAMS s0 s1 XCHG
s0 s8 XCHG2
STSLICER
s6 PUSH
ISNULL
NOT
<{
-1 PUSHINT
s0 s1 XCHG
1 STI
s1 s6 XCHG
STREF
}> PUSHCONT
<{
s6 POP
0 PUSHINT
s0 s6 XCHG2
1 STI
}> PUSHCONT
IFELSE
s1 s4 XCHG
1 STI 1 STI
ROT s1 s6 XCHG
s0 PUSH STREF
ISNULL }> PUSHCONT
<{ <{
s0 POP s6 POP
0 PUSHINT 0 PUSHINT
s0 s1 XCHG s0 s6 XCHG2
2 STU 1 STI
}> PUSHCONT }> PUSHCONT
<{ IFELSE
STSLICER s1 s4 XCHG
}> PUSHCONT 1 STI
IFELSE ROT
s0 PUSH
ISNULL
<{
s0 POP
0 PUSHINT
s0 s1 XCHG s0 s1 XCHG
s0 PUSH 2 STU
ISNULL }> PUSHCONT
<{ <{
s0 POP STSLICER
0 PUSHINT }> PUSHCONT
s0 s1 XCHG IFELSE
2 STU s0 s1 XCHG
}> PUSHCONT s0 PUSH
<{ ISNULL
STSLICER <{
}> PUSHCONT s0 POP
IFELSE 0 PUSHINT
s0 s1 XCHG s0 s1 XCHG
NEWC 2 STU
257 PUSHINT }> PUSHCONT
STIX <{
ROT STSLICER
s0 PUSH }> PUSHCONT
ISNULL IFELSE
<{ s0 s1 XCHG
s0 POP NEWC
0 PUSHINT 257 PUSHINT
s0 s1 XCHG STIX
2 STU ROT
}> PUSHCONT s0 PUSH
<{ ISNULL
STSLICER <{
}> PUSHCONT s0 POP
IFELSE 0 PUSHINT
s4 s3 XCHG2
<{
s2 s3 XCHG2
STDICT
STDICT
257 PUSHINT
STIX
}> CALLREF
ENDC
s0 s1 XCHG s0 s1 XCHG
STREF 2 STU
}> CALLREF }> PUSHCONT
<{
STSLICER
}> PUSHCONT
IFELSE
s4 s3 XCHG2
s2 s3 XCHG2
STDICT
STDICT
257 PUSHINT
STIX
ENDC
s0 s1 XCHG
STREF
ENDC ENDC
107886: 107886:

2
sources/output/jetton_TONB.md

@ -1,6 +1,6 @@
# TACT Compilation Report # TACT Compilation Report
Contract: TONB Contract: TONB
BOC Size: 2191 bytes BOC Size: 3240 bytes
# Types # Types
Total Types: 27 Total Types: 27

2
sources/output/jetton_TONB.pkg

File diff suppressed because one or more lines are too long

11
sources/output/jetton_TONB.ts

File diff suppressed because one or more lines are too long

BIN
sources/output/jetton_TONBWallet.code.boc

Binary file not shown.

56
sources/output/jetton_TONBWallet.code.fc

@ -1,8 +1,12 @@
#pragma version =0.4.1;
#pragma allow-post-modification;
#pragma compute-asm-ltr;
int __tact_my_balance() inline { int __tact_my_balance() inline {
return pair_first(get_balance()); return pair_first(get_balance());
} }
forall X -> X __tact_not_null(X x) { throw_if(128, null?(x)); return x; } forall X -> X __tact_not_null(X x) inline { throw_if(128, null?(x)); return x; }
global (int, slice, int, slice) __tact_context; global (int, slice, int, slice) __tact_context;
global cell __tact_context_sys; global cell __tact_context_sys;
@ -133,7 +137,7 @@ cell __gen_writecell_TokenTransferInternal((int, int, slice, slice, int, slice,
return (sc_0, (v'queryId, v'amount, v'from, v'responseAddress, v'forwardTonAmount, v'forwardPayload, v'setLinker, v'setLinkerAddress)); return (sc_0, (v'queryId, v'amount, v'from, v'responseAddress, v'forwardTonAmount, v'forwardPayload, v'setLinker, v'setLinkerAddress));
} }
builder __gen_write_TokenNotification(builder build_0, (int, int, slice, slice) v) inline_ref { builder __gen_write_TokenNotification(builder build_0, (int, int, slice, slice) v) inline {
var (v'queryId, v'amount, v'from, v'forwardPayload) = v; var (v'queryId, v'amount, v'from, v'forwardPayload) = v;
build_0 = store_uint(build_0, 1935855772, 32); build_0 = store_uint(build_0, 1935855772, 32);
build_0 = build_0.store_uint(v'queryId, 64); build_0 = build_0.store_uint(v'queryId, 64);
@ -147,7 +151,7 @@ cell __gen_writecell_TokenNotification((int, int, slice, slice) v) inline_ref {
return __gen_write_TokenNotification(begin_cell(), v).end_cell(); return __gen_write_TokenNotification(begin_cell(), v).end_cell();
} }
(slice, ((int, int, slice, slice))) __gen_read_TokenBurn(slice sc_0) inline_ref { (slice, ((int, int, slice, slice))) __gen_read_TokenBurn(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 1499400124); throw_unless(129, sc_0~load_uint(32) == 1499400124);
var v'queryId = sc_0~load_uint(64); var v'queryId = sc_0~load_uint(64);
var v'amount = sc_0~load_coins(); var v'amount = sc_0~load_coins();
@ -156,7 +160,7 @@ cell __gen_writecell_TokenNotification((int, int, slice, slice) v) inline_ref {
return (sc_0, (v'queryId, v'amount, v'owner, v'responseAddress)); return (sc_0, (v'queryId, v'amount, v'owner, v'responseAddress));
} }
builder __gen_write_TokenBurnNotification(builder build_0, (int, int, slice, slice) v) inline_ref { builder __gen_write_TokenBurnNotification(builder build_0, (int, int, slice, slice) v) inline {
var (v'queryId, v'amount, v'owner, v'responseAddress) = v; var (v'queryId, v'amount, v'owner, v'responseAddress) = v;
build_0 = store_uint(build_0, 2078119902, 32); build_0 = store_uint(build_0, 2078119902, 32);
build_0 = build_0.store_uint(v'queryId, 64); build_0 = build_0.store_uint(v'queryId, 64);
@ -170,7 +174,7 @@ cell __gen_writecell_TokenBurnNotification((int, int, slice, slice) v) inline_re
return __gen_write_TokenBurnNotification(begin_cell(), v).end_cell(); return __gen_write_TokenBurnNotification(begin_cell(), v).end_cell();
} }
builder __gen_write_TokenExcesses(builder build_0, (int) v) inline_ref { builder __gen_write_TokenExcesses(builder build_0, (int) v) inline {
var (v'queryId) = v; var (v'queryId) = v;
build_0 = store_uint(build_0, 3576854235, 32); build_0 = store_uint(build_0, 3576854235, 32);
build_0 = build_0.store_uint(v'queryId, 64); build_0 = build_0.store_uint(v'queryId, 64);
@ -181,13 +185,13 @@ cell __gen_writecell_TokenExcesses((int) v) inline_ref {
return __gen_write_TokenExcesses(begin_cell(), v).end_cell(); return __gen_write_TokenExcesses(begin_cell(), v).end_cell();
} }
(slice, ((slice))) __gen_read_BlacklistWallet(slice sc_0) inline_ref { (slice, ((slice))) __gen_read_BlacklistWallet(slice sc_0) inline {
throw_unless(129, sc_0~load_uint(32) == 43811734); throw_unless(129, sc_0~load_uint(32) == 43811734);
var v'wallet = sc_0~__tact_load_address(); var v'wallet = sc_0~__tact_load_address();
return (sc_0, (v'wallet)); return (sc_0, (v'wallet));
} }
builder __gen_write_TONBWallet(builder build_0, (int, slice, slice, int, int, slice) v) inline_ref { builder __gen_write_TONBWallet(builder build_0, (int, slice, slice, int, int, slice) v) inline {
var (v'balance, v'owner, v'master, v'blacklisted, v'linker, v'linker_address) = v; var (v'balance, v'owner, v'master, v'blacklisted, v'linker, v'linker_address) = v;
build_0 = build_0.store_int(v'balance, 257); build_0 = build_0.store_int(v'balance, 257);
build_0 = __tact_store_address(build_0, v'owner); build_0 = __tact_store_address(build_0, v'owner);
@ -200,7 +204,7 @@ builder __gen_write_TONBWallet(builder build_0, (int, slice, slice, int, int, sl
return build_0; return build_0;
} }
(slice, ((int, slice, slice, int, int, slice))) __gen_read_TONBWallet(slice sc_0) inline_ref { (slice, ((int, slice, slice, int, int, slice))) __gen_read_TONBWallet(slice sc_0) inline {
var v'balance = sc_0~load_int(257); var v'balance = sc_0~load_int(257);
var v'owner = sc_0~__tact_load_address(); var v'owner = sc_0~__tact_load_address();
var v'master = sc_0~__tact_load_address(); var v'master = sc_0~__tact_load_address();
@ -216,30 +220,30 @@ _ __gen_StateInit_get_code((cell, cell) v) inline {
return v'code; return v'code;
} }
(int, slice, slice, cell) __gen_JettonWalletData_to_external(((int, slice, slice, cell)) v) { (int, slice, slice, cell) __gen_JettonWalletData_to_external(((int, slice, slice, cell)) v) inline {
var (v'balance, v'owner, v'master, v'walletCode) = v; var (v'balance, v'owner, v'master, v'walletCode) = v;
return (v'balance, v'owner, v'master, v'walletCode); return (v'balance, v'owner, v'master, v'walletCode);
} }
(int, slice, slice, int, int, slice) __gen_load_TONBWallet() inline_ref { (int, slice, slice, int, int, slice) __gen_load_TONBWallet() inline {
slice sc = get_data().begin_parse(); slice sc = get_data().begin_parse();
__tact_context_sys = sc~load_ref(); __tact_context_sys = sc~load_ref();
return sc~__gen_read_TONBWallet(); return sc~__gen_read_TONBWallet();
} }
() __gen_store_TONBWallet((int, slice, slice, int, int, slice) v) impure inline_ref { () __gen_store_TONBWallet((int, slice, slice, int, int, slice) v) impure inline {
builder b = begin_cell(); builder b = begin_cell();
b = b.store_ref(__tact_context_sys); b = b.store_ref(__tact_context_sys);
b = __gen_write_TONBWallet(b, v); b = __gen_write_TONBWallet(b, v);
set_data(b.end_cell()); set_data(b.end_cell());
} }
slice $contractAddress((cell, cell) $s) impure { slice $contractAddress((cell, cell) $s) impure inline_ref {
var (($s'code, $s'data)) = $s; var (($s'code, $s'data)) = $s;
return __tact_compute_contract_address(0, $s'code, $s'data); return __tact_compute_contract_address(0, $s'code, $s'data);
} }
() $send((int, slice, int, int, cell, cell, cell) $params) impure { () $send((int, slice, int, int, cell, cell, cell) $params) impure inline_ref {
var (($params'bounce, $params'to, $params'value, $params'mode, $params'body, $params'code, $params'data)) = $params; var (($params'bounce, $params'to, $params'value, $params'mode, $params'body, $params'code, $params'data)) = $params;
builder $b = begin_cell(); builder $b = begin_cell();
$b = store_int($b, 1, 2); $b = store_int($b, 1, 2);
@ -282,7 +286,7 @@ slice $contractAddress((cell, cell) $s) impure {
send_raw_message($c, $params'mode); send_raw_message($c, $params'mode);
} }
int $__gen_Context_readForwardFee((int, slice, int, slice) $self) impure { int $__gen_Context_readForwardFee((int, slice, int, slice) $self) impure inline_ref {
var (($self'bounced, $self'sender, $self'value, $self'raw)) = $self; var (($self'bounced, $self'sender, $self'value, $self'raw)) = $self;
var (($self'bounced, $self'sender, $self'value, $self'raw)) = $self; var (($self'bounced, $self'sender, $self'value, $self'raw)) = $self;
slice $sc = $self'raw; slice $sc = $self'raw;
@ -315,7 +319,7 @@ cell $__gen_TONBWallet_init(cell sys', slice $master, slice $owner) {
return (mine, $__gen_TONBWallet_init(sys, $master, $owner)); return (mine, $__gen_TONBWallet_init(sys, $master, $owner));
} }
(int, slice, slice, cell) $__gen_TONBWallet_get_wallet_data((int, slice, slice, int, int, slice) $self) impure { (int, slice, slice, cell) $__gen_TONBWallet_get_wallet_data((int, slice, slice, int, int, slice) $self) impure inline_ref {
var (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address)) = $self; var (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address)) = $self;
return ($self'balance, $self'owner, $self'master, __gen_StateInit_get_code($__gen_TONBWallet_init_child(__tact_context_sys, $self'master, $self'owner))); return ($self'balance, $self'owner, $self'master, __gen_StateInit_get_code($__gen_TONBWallet_init_child(__tact_context_sys, $self'master, $self'owner)));
} }
@ -326,7 +330,7 @@ _ $__gen_get_get_wallet_data() method_id(97026) {
return __gen_JettonWalletData_to_external(res); return __gen_JettonWalletData_to_external(res);
} }
(((int, slice, slice, int, int, slice)), ()) $__gen_TONBWallet_receive_TokenTransfer((int, slice, slice, int, int, slice) $self, (int, int, slice, slice, cell, int, slice) $msg) impure { (((int, slice, slice, int, int, slice)), ()) $__gen_TONBWallet_receive_TokenTransfer((int, slice, slice, int, int, slice) $self, (int, int, slice, slice, cell, int, slice) $msg) impure inline {
var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self; var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self;
var ($msg'queryId, $msg'amount, $msg'destination, $msg'responseDestination, $msg'customPayload, $msg'forwardTonAmount, $msg'forwardPayload) = $msg; var ($msg'queryId, $msg'amount, $msg'destination, $msg'responseDestination, $msg'customPayload, $msg'forwardTonAmount, $msg'forwardPayload) = $msg;
throw_unless(44816, (~ $self'blacklisted)); throw_unless(44816, (~ $self'blacklisted));
@ -339,20 +343,26 @@ _ $__gen_get_get_wallet_data() method_id(97026) {
if (($msg'forwardTonAmount > 0)) { if (($msg'forwardTonAmount > 0)) {
$fwdCount = 2; $fwdCount = 2;
} }
throw_unless(16059, ($ctx'value > ((($fwdCount * $fwdFee) + (2 * 10000000)) + 10000000))); throw_unless(16059, ($ctx'value > 50000000));
var ($init'code, $init'data) = $__gen_TONBWallet_init_child(__tact_context_sys, $self'master, $msg'destination); var ($init'code, $init'data) = $__gen_TONBWallet_init_child(__tact_context_sys, $self'master, $msg'destination);
slice $walletAddress = $contractAddress(($init'code, $init'data)); slice $walletAddress = $contractAddress(($init'code, $init'data));
$send((true, $walletAddress, 0, 64, __gen_writecell_TokenTransferInternal(($msg'queryId, $msg'amount, $self'owner, $self'owner, $msg'forwardTonAmount, $msg'forwardPayload, null(), null())), $init'code, $init'data)); $send((true, $walletAddress, 0, 64, __gen_writecell_TokenTransferInternal(($msg'queryId, $msg'amount, $self'owner, $self'owner, $msg'forwardTonAmount, $msg'forwardPayload, null(), null())), $init'code, $init'data));
return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ()); return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ());
} }
(((int, slice, slice, int, int, slice)), ()) $__gen_TONBWallet_receive_TokenTransferInternal((int, slice, slice, int, int, slice) $self, (int, int, slice, slice, int, slice, int, slice) $msg) impure { (((int, slice, slice, int, int, slice)), ()) $__gen_TONBWallet_receive_TokenTransferInternal((int, slice, slice, int, int, slice) $self, (int, int, slice, slice, int, slice, int, slice) $msg) impure inline {
var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self; var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self;
var ($msg'queryId, $msg'amount, $msg'from, $msg'responseAddress, $msg'forwardTonAmount, $msg'forwardPayload, $msg'setLinker, $msg'setLinkerAddress) = $msg; var ($msg'queryId, $msg'amount, $msg'from, $msg'responseAddress, $msg'forwardTonAmount, $msg'forwardPayload, $msg'setLinker, $msg'setLinkerAddress) = $msg;
if ($self'blacklisted) {
$send((true, $self'master, 0, 64, __gen_writecell_TokenBurnNotification(($msg'queryId, $msg'amount, $self'owner, $self'owner)), null(), null()));
return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ());
}
var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get();
if (null?($self'linker)) { if (null?($self'linker)) {
$self'linker = $msg'setLinker; if ((~ null?($msg'setLinker))) {
$self'linker_address = $msg'setLinkerAddress; $self'linker = $msg'setLinker;
$self'linker_address = $msg'setLinkerAddress;
}
} }
if ((__tact_address_neq($ctx'sender, $self'master) & __tact_address_neq($ctx'sender, $self'linker_address))) { if ((__tact_address_neq($ctx'sender, $self'master) & __tact_address_neq($ctx'sender, $self'linker_address))) {
var ($sinit'code, $sinit'data) = $__gen_TONBWallet_init_child(__tact_context_sys, $self'master, $msg'from); var ($sinit'code, $sinit'data) = $__gen_TONBWallet_init_child(__tact_context_sys, $self'master, $msg'from);
@ -375,7 +385,7 @@ _ $__gen_get_get_wallet_data() method_id(97026) {
return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ()); return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ());
} }
(((int, slice, slice, int, int, slice)), ()) $__gen_TONBWallet_receive_TokenBurn((int, slice, slice, int, int, slice) $self, (int, int, slice, slice) $msg) impure { (((int, slice, slice, int, int, slice)), ()) $__gen_TONBWallet_receive_TokenBurn((int, slice, slice, int, int, slice) $self, (int, int, slice, slice) $msg) impure inline {
var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self; var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self;
var ($msg'queryId, $msg'amount, $msg'owner, $msg'responseAddress) = $msg; var ($msg'queryId, $msg'amount, $msg'owner, $msg'responseAddress) = $msg;
var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get();
@ -388,7 +398,7 @@ _ $__gen_get_get_wallet_data() method_id(97026) {
return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ()); return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ());
} }
(((int, slice, slice, int, int, slice)), ()) $__gen_TONBWallet_receive_BlacklistWallet((int, slice, slice, int, int, slice) $self, (slice) $_msg) impure { (((int, slice, slice, int, int, slice)), ()) $__gen_TONBWallet_receive_BlacklistWallet((int, slice, slice, int, int, slice) $self, (slice) $_msg) impure inline {
var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self; var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self;
var ($_msg'wallet) = $_msg; var ($_msg'wallet) = $_msg;
var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get(); var ($ctx'bounced, $ctx'sender, $ctx'value, $ctx'raw) = __tact_context_get();
@ -400,7 +410,7 @@ _ $__gen_get_get_wallet_data() method_id(97026) {
return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ()); return (($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address), ());
} }
((int, slice, slice, int, int, slice), ()) $__gen_TONBWallet_receive_bounced((int, slice, slice, int, int, slice) $self, slice $msg) impure { ((int, slice, slice, int, int, slice), ()) $__gen_TONBWallet_receive_bounced((int, slice, slice, int, int, slice) $self, slice $msg) impure inline {
var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self; var ($self'balance, $self'owner, $self'master, $self'blacklisted, $self'linker, $self'linker_address) = $self;
$msg~skip_bits(32); $msg~skip_bits(32);
int $op = $msg~load_uint(32); int $op = $msg~load_uint(32);

295
sources/output/jetton_TONBWallet.code.fif

@ -53,7 +53,7 @@ PROGRAM{
BALANCE BALANCE
FIRST FIRST
}> }>
__tact_not_null PROC:<{ __tact_not_null PROCINLINE:<{
DUP DUP
ISNULL ISNULL
128 THROWIF 128 THROWIF
@ -261,7 +261,7 @@ PROGRAM{
s2 s4 XCHG s2 s4 XCHG
s2 s3 XCHG s2 s3 XCHG
}> }>
__gen_write_TokenNotification PROCREF:<{ __gen_write_TokenNotification PROCINLINE:<{
1935855772 PUSHINT 1935855772 PUSHINT
s0 s5 XCHG2 s0 s5 XCHG2
32 STU 32 STU
@ -280,7 +280,7 @@ PROGRAM{
__gen_write_TokenNotification INLINECALLDICT __gen_write_TokenNotification INLINECALLDICT
ENDC ENDC
}> }>
__gen_read_TokenBurn PROCREF:<{ __gen_read_TokenBurn PROCINLINE:<{
32 LDU 32 LDU
SWAP SWAP
1499400124 PUSHINT 1499400124 PUSHINT
@ -294,7 +294,7 @@ PROGRAM{
s1 s4 XCHG s1 s4 XCHG
s3 s3 s0 XCHG3 s3 s3 s0 XCHG3
}> }>
__gen_write_TokenBurnNotification PROCREF:<{ __gen_write_TokenBurnNotification PROCINLINE:<{
2078119902 PUSHINT 2078119902 PUSHINT
s0 s5 XCHG2 s0 s5 XCHG2
32 STU 32 STU
@ -313,7 +313,7 @@ PROGRAM{
__gen_write_TokenBurnNotification INLINECALLDICT __gen_write_TokenBurnNotification INLINECALLDICT
ENDC ENDC
}> }>
__gen_write_TokenExcesses PROCREF:<{ __gen_write_TokenExcesses PROCINLINE:<{
3576854235 PUSHINT 3576854235 PUSHINT
ROT ROT
32 STU 32 STU
@ -325,7 +325,7 @@ PROGRAM{
__gen_write_TokenExcesses INLINECALLDICT __gen_write_TokenExcesses INLINECALLDICT
ENDC ENDC
}> }>
__gen_read_BlacklistWallet PROCREF:<{ __gen_read_BlacklistWallet PROCINLINE:<{
32 LDU 32 LDU
SWAP SWAP
43811734 PUSHINT 43811734 PUSHINT
@ -333,7 +333,7 @@ PROGRAM{
129 THROWIFNOT 129 THROWIFNOT
__tact_load_address INLINECALLDICT __tact_load_address INLINECALLDICT
}> }>
__gen_write_TONBWallet PROCREF:<{ __gen_write_TONBWallet PROCINLINE:<{
s5 s6 XCHG2 s5 s6 XCHG2
257 PUSHINT 257 PUSHINT
STIX STIX
@ -365,7 +365,7 @@ PROGRAM{
SWAP SWAP
STREF STREF
}> }>
__gen_read_TONBWallet PROCREF:<{ __gen_read_TONBWallet PROCINLINE:<{
257 PUSHINT 257 PUSHINT
LDIX LDIX
__tact_load_address INLINECALLDICT __tact_load_address INLINECALLDICT
@ -395,9 +395,9 @@ PROGRAM{
__gen_StateInit_get_code PROCINLINE:<{ __gen_StateInit_get_code PROCINLINE:<{
DROP DROP
}> }>
__gen_JettonWalletData_to_external PROC:<{ __gen_JettonWalletData_to_external PROCINLINE:<{
}> }>
__gen_load_TONBWallet PROCREF:<{ __gen_load_TONBWallet PROCINLINE:<{
c4 PUSH c4 PUSH
CTOS CTOS
LDREF LDREF
@ -406,7 +406,7 @@ PROGRAM{
__gen_read_TONBWallet INLINECALLDICT __gen_read_TONBWallet INLINECALLDICT
1 6 BLKDROP2 1 6 BLKDROP2
}> }>
__gen_store_TONBWallet PROCREF:<{ __gen_store_TONBWallet PROCINLINE:<{
NEWC NEWC
__tact_context_sys GETGLOB __tact_context_sys GETGLOB
SWAP SWAP
@ -416,12 +416,12 @@ PROGRAM{
ENDC ENDC
c4 POP c4 POP
}> }>
$contractAddress PROC:<{ $contractAddress PROCREF:<{
0 PUSHINT 0 PUSHINT
-ROT -ROT
__tact_compute_contract_address INLINECALLDICT __tact_compute_contract_address INLINECALLDICT
}> }>
$send PROC:<{ $send PROCREF:<{
NEWC NEWC
1 PUSHINT 1 PUSHINT
SWAP SWAP
@ -460,7 +460,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
s0 s4 XCHG s0 s4 XCHG
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
s0 s4 XCHG2 s0 s4 XCHG2
STREF STREF
}>ELSE<{ }>ELSE<{
@ -476,7 +476,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
s0 s4 XCHG s0 s4 XCHG
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
s0 s4 XCHG2 s0 s4 XCHG2
STREF STREF
}>ELSE<{ }>ELSE<{
@ -508,7 +508,7 @@ PROGRAM{
TRUE TRUE
__tact_store_bool INLINECALLDICT __tact_store_bool INLINECALLDICT
SWAP SWAP
__tact_not_null CALLDICT __tact_not_null INLINECALLDICT
SWAP SWAP
STREF STREF
}>ELSE<{ }>ELSE<{
@ -520,7 +520,7 @@ PROGRAM{
SWAP SWAP
SENDRAWMSG SENDRAWMSG
}> }>
$__gen_Context_readForwardFee PROC:<{ $__gen_Context_readForwardFee PROCREF:<{
3 1 BLKDROP2 3 1 BLKDROP2
LDGRAMS LDGRAMS
NIP NIP
@ -566,7 +566,7 @@ PROGRAM{
s0 s0 s3 XCHG3 s0 s0 s3 XCHG3
$__gen_TONBWallet_init CALLDICT $__gen_TONBWallet_init CALLDICT
}> }>
$__gen_TONBWallet_get_wallet_data PROC:<{ $__gen_TONBWallet_get_wallet_data PROCREF:<{
3 BLKDROP 3 BLKDROP
__tact_context_sys GETGLOB __tact_context_sys GETGLOB
s1 s2 PUSH2 s1 s2 PUSH2
@ -575,10 +575,10 @@ PROGRAM{
}> }>
$__gen_get_get_wallet_data PROC:<{ $__gen_get_get_wallet_data PROC:<{
__gen_load_TONBWallet INLINECALLDICT __gen_load_TONBWallet INLINECALLDICT
$__gen_TONBWallet_get_wallet_data CALLDICT $__gen_TONBWallet_get_wallet_data INLINECALLDICT
__gen_JettonWalletData_to_external CALLDICT __gen_JettonWalletData_to_external INLINECALLDICT
}> }>
$__gen_TONBWallet_receive_TokenTransfer PROC:<{ $__gen_TONBWallet_receive_TokenTransfer PROCINLINE:<{
2 2 BLKDROP2 2 2 BLKDROP2
44816 PUSHINT 44816 PUSHINT
s8 PUSH s8 PUSH
@ -597,29 +597,22 @@ PROGRAM{
THROWANYIFNOT THROWANYIFNOT
s3 s3 s0 XCHG3 s3 s3 s0 XCHG3
s3 s14 PUXC s3 s14 PUXC
$__gen_Context_readForwardFee CALLDICT $__gen_Context_readForwardFee INLINECALLDICT
1 PUSHINT DROP
s4 PUSH s2 PUSH
0 GTINT 0 GTINT
IF:<{ IF:<{
DROP
2 PUSHINT
}> }>
16059 PUSHINT 16059 PUSHINT
s0 s2 XCHG SWAP
MUL 50000000 PUSHINT
20000000 PUSHINT
ADD
10000000 PUSHINT
ADD
s1 s2 XCHG
GREATER GREATER
THROWANYIFNOT THROWANYIFNOT
__tact_context_sys GETGLOB __tact_context_sys GETGLOB
s0 s9 s3 XCPUXC s0 s9 s3 XCPUXC
$__gen_TONBWallet_init_child CALLDICT $__gen_TONBWallet_init_child CALLDICT
2DUP 2DUP
$contractAddress CALLDICT $contractAddress INLINECALLDICT
TRUE TRUE
s7 s6 XCHG2 s7 s6 XCHG2
0 PUSHINT 0 PUSHINT
@ -636,110 +629,134 @@ PROGRAM{
s5 s6 XCHG s5 s6 XCHG
s3 s4 XCHG s3 s4 XCHG
-ROT -ROT
$send CALLDICT $send INLINECALLDICT
}> }>
$__gen_TONBWallet_receive_TokenTransferInternal PROC:<{ $__gen_TONBWallet_receive_TokenTransferInternal PROCINLINE:<{
__tact_context_get INLINECALLDICT s10 PUSH
s13 PUSH
ISNULL
IF:<{ IF:<{
s12 POP 6 BLKDROP
s12 POP TRUE
s3 s11 XCHG 0 PUSHINT
s2 s10 XCHG s0 s3 XCHG
64 PUSHINT
s3 s9 s9 XCPU2
__gen_writecell_TokenBurnNotification INLINECALLDICT
s3 s0 s7 XC2PU
s3 s3 XCHG2
PUSHNULL
PUSHNULL
$send INLINECALLDICT
}>ELSE<{ }>ELSE<{
s4 POP __tact_context_get INLINECALLDICT
s4 POP s13 PUSH
}> ISNULL
s0 s13 PUSH2 IF:<{
__tact_address_neq INLINECALLDICT s5 PUSH
s1 s11 PUSH2 ISNULL
__tact_address_neq INLINECALLDICT NOT
AND IF:<{
IF:<{ s12 POP
__tact_context_sys GETGLOB s12 POP
s14 s8 PUSH2 s3 s11 XCHG
$__gen_TONBWallet_init_child CALLDICT s2 s10 XCHG
SWAP }>ELSE<{
4429 PUSHINT s4 POP
s0 s2 XCHG s4 POP
$contractAddress CALLDICT }>
s2 PUSH }>ELSE<{
__tact_address_eq INLINECALLDICT s4 POP
s4 POP
}>
s0 s13 PUSH2
__tact_address_neq INLINECALLDICT
s1 s11 PUSH2
__tact_address_neq INLINECALLDICT
AND
IF:<{
__tact_context_sys GETGLOB
s14 s8 PUSH2
$__gen_TONBWallet_init_child CALLDICT
SWAP
4429 PUSHINT
s0 s2 XCHG
$contractAddress INLINECALLDICT
s2 PUSH
__tact_address_eq INLINECALLDICT
THROWANYIFNOT
}>
s15 s8 XCPU
ADD
62972 PUSHINT
OVER
-1 GTINT
THROWANYIFNOT THROWANYIFNOT
}> s3 PUSH
s15 s8 XCPU __tact_my_balance INLINECALLDICT
ADD OVER
62972 PUSHINT SUB
OVER 10000000 PUSHINT
-1 GTINT TUCK
THROWANYIFNOT MIN
s3 PUSH SUB
__tact_my_balance INLINECALLDICT 10000000 PUSHINT
OVER
SUB
10000000 PUSHINT
TUCK
MIN
SUB
10000000 PUSHINT
ADD
SUB
s6 PUSH
0 GTINT
IF:<{
s2 s3 XCHG
s0 16 s() XCHG
s4 s2 XCHG2
$__gen_Context_readForwardFee CALLDICT
s3 s(-1) PUXC
ADD ADD
s1 s13 XCHG
SUB SUB
FALSE s6 PUSH
0 PUSHINT 0 GTINT
IF:<{
s2 s3 XCHG
s0 16 s() XCHG
s4 s2 XCHG2
$__gen_Context_readForwardFee INLINECALLDICT
s3 s(-1) PUXC
ADD
s1 s13 XCHG
SUB
FALSE
0 PUSHINT
s8 PUSH
s8 s1 s3 XCHG3
s7 s4 XCHG2
__gen_writecell_TokenNotification INLINECALLDICT
s11 PUSH
s4 s6 XCHG
s3 s1 s3 XCHG3
s5 s5 XCHG2
PUSHNULL
PUSHNULL
$send INLINECALLDICT
s0 s8 XCHG2
}>ELSE<{
s7 16 s() XCHG
s8 s9 XCHG2
8 BLKDROP
}>
s8 PUSH s8 PUSH
s8 s1 s3 XCHG3 ISNULL
s7 s4 XCHG2 NOT
__gen_writecell_TokenNotification INLINECALLDICT s2 PUSH
s11 PUSH 0 GTINT
s4 s6 XCHG AND
s3 s1 s3 XCHG3 IF:<{
s5 s5 XCHG2 FALSE
PUSHNULL s0 s9 XCHG
PUSHNULL __tact_not_null INLINECALLDICT
$send CALLDICT 0 PUSHINT
s0 s8 XCHG2 s0 s4 XCHG
}>ELSE<{ __gen_writecell_TokenExcesses INLINECALLDICT
s7 16 s() XCHG s4 s10 XCHG
s8 s9 XCHG2 s3 s3 s0 XCHG3
8 BLKDROP s1 s10 XCHG
}> PUSHNULL
s8 PUSH PUSHNULL
ISNULL $send INLINECALLDICT
NOT }>ELSE<{
s2 PUSH s8 POP
0 GTINT 2DROP
AND }>
IF:<{
FALSE
s0 s9 XCHG
__tact_not_null CALLDICT
0 PUSHINT
s0 s4 XCHG
__gen_writecell_TokenExcesses INLINECALLDICT
s4 s10 XCHG
s3 s3 s0 XCHG3
s1 s10 XCHG
PUSHNULL
PUSHNULL
$send CALLDICT
}>ELSE<{
s8 POP
2DROP
}> }>
}> }>
$__gen_TONBWallet_receive_TokenBurn PROC:<{ $__gen_TONBWallet_receive_TokenBurn PROCINLINE:<{
2DROP 2DROP
__tact_context_get INLINECALLDICT __tact_context_get INLINECALLDICT
4429 PUSHINT 4429 PUSHINT
@ -760,7 +777,7 @@ PROGRAM{
THROWANYIFNOT THROWANYIFNOT
s3 s3 s0 XCHG3 s3 s3 s0 XCHG3
s3 s11 PUXC s3 s11 PUXC
$__gen_Context_readForwardFee CALLDICT $__gen_Context_readForwardFee INLINECALLDICT
DROP DROP
16059 PUSHINT 16059 PUSHINT
SWAP SWAP
@ -777,9 +794,9 @@ PROGRAM{
s3 s3 XCHG2 s3 s3 XCHG2
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
$send CALLDICT $send INLINECALLDICT
}> }>
$__gen_TONBWallet_receive_BlacklistWallet PROC:<{ $__gen_TONBWallet_receive_BlacklistWallet PROCINLINE:<{
DROP DROP
s2 POP s2 POP
__tact_context_get INLINECALLDICT __tact_context_get INLINECALLDICT
@ -806,10 +823,10 @@ PROGRAM{
s10 s10 XCHG2 s10 s10 XCHG2
PUSHNULL PUSHNULL
PUSHNULL PUSHNULL
$send CALLDICT $send INLINECALLDICT
s0 s2 XCHG s0 s2 XCHG
}> }>
$__gen_TONBWallet_receive_bounced PROC:<{ $__gen_TONBWallet_receive_bounced PROCINLINE:<{
32 PUSHINT 32 PUSHINT
SDSKIPFIRST SDSKIPFIRST
32 LDU 32 LDU
@ -865,7 +882,7 @@ PROGRAM{
DROP DROP
__gen_load_TONBWallet INLINECALLDICT __gen_load_TONBWallet INLINECALLDICT
6 ROLL 6 ROLL
$__gen_TONBWallet_receive_bounced CALLDICT $__gen_TONBWallet_receive_bounced INLINECALLDICT
__gen_store_TONBWallet INLINECALLDICT __gen_store_TONBWallet INLINECALLDICT
}> }>
DUP DUP
@ -883,7 +900,7 @@ PROGRAM{
s8 s9 XCHG s8 s9 XCHG
s7 s8 XCHG s7 s8 XCHG
6 ROLL 6 ROLL
$__gen_TONBWallet_receive_TokenTransfer CALLDICT $__gen_TONBWallet_receive_TokenTransfer INLINECALLDICT
__gen_store_TONBWallet INLINECALLDICT __gen_store_TONBWallet INLINECALLDICT
}> }>
DUP DUP
@ -901,7 +918,7 @@ PROGRAM{
s9 s10 XCHG s9 s10 XCHG
s8 s9 XCHG s8 s9 XCHG
7 ROLL 7 ROLL
$__gen_TONBWallet_receive_TokenTransferInternal CALLDICT $__gen_TONBWallet_receive_TokenTransferInternal INLINECALLDICT
__gen_store_TONBWallet INLINECALLDICT __gen_store_TONBWallet INLINECALLDICT
}> }>
DUP DUP
@ -919,7 +936,7 @@ PROGRAM{
s5 s6 XCHG s5 s6 XCHG
s4 s5 XCHG s4 s5 XCHG
3 ROLL 3 ROLL
$__gen_TONBWallet_receive_TokenBurn CALLDICT $__gen_TONBWallet_receive_TokenBurn INLINECALLDICT
__gen_store_TONBWallet INLINECALLDICT __gen_store_TONBWallet INLINECALLDICT
}> }>
43811734 PUSHINT 43811734 PUSHINT
@ -933,7 +950,7 @@ PROGRAM{
s4 s5 XCHG s4 s5 XCHG
s3 s4 XCHG s3 s4 XCHG
s1 s3 s0 XCHG3 s1 s3 s0 XCHG3
$__gen_TONBWallet_receive_BlacklistWallet CALLDICT $__gen_TONBWallet_receive_BlacklistWallet INLINECALLDICT
__gen_store_TONBWallet INLINECALLDICT __gen_store_TONBWallet INLINECALLDICT
}> }>
DROP DROP

2798
sources/output/jetton_TONBWallet.code.rev.fif

File diff suppressed because it is too large Load Diff

BIN
sources/output/jetton_TONBWallet.init.boc

Binary file not shown.

6
sources/output/jetton_TONBWallet.init.fc

@ -1,3 +1,7 @@
#pragma version =0.4.1;
#pragma allow-post-modification;
#pragma compute-asm-ltr;
() __tact_verify_address(slice address) inline { () __tact_verify_address(slice address) inline {
throw_unless(136, address.slice_bits() != 267); throw_unless(136, address.slice_bits() != 267);
} }
@ -17,7 +21,7 @@ builder __tact_store_address_opt(builder b, slice address) inline {
} }
} }
builder __gen_write_TONBWallet(builder build_0, (int, slice, slice, int, int, slice) v) inline_ref { builder __gen_write_TONBWallet(builder build_0, (int, slice, slice, int, int, slice) v) inline {
var (v'balance, v'owner, v'master, v'blacklisted, v'linker, v'linker_address) = v; var (v'balance, v'owner, v'master, v'blacklisted, v'linker, v'linker_address) = v;
build_0 = build_0.store_int(v'balance, 257); build_0 = build_0.store_int(v'balance, 257);
build_0 = __tact_store_address(build_0, v'owner); build_0 = __tact_store_address(build_0, v'owner);

2
sources/output/jetton_TONBWallet.init.fif

@ -27,7 +27,7 @@ PROGRAM{
__tact_store_address INLINECALLDICT __tact_store_address INLINECALLDICT
}> }>
}> }>
__gen_write_TONBWallet PROCREF:<{ __gen_write_TONBWallet PROCINLINE:<{
s5 s6 XCHG2 s5 s6 XCHG2
257 PUSHINT 257 PUSHINT
STIX STIX

78
sources/output/jetton_TONBWallet.init.rev.fif

@ -13,51 +13,49 @@ SETCP0
s0 s6 XCHG s0 s6 XCHG
s0 s5 XCHG s0 s5 XCHG
3 1 BLKSWAP 3 1 BLKSWAP
s5 s6 XCHG2
257 PUSHINT
STIX
s0 s3 XCHG2
STSLICER
s0 s1 XCHG
STSLICER
1 STI
NEWC
s2 PUSH
ISNULL
NOT
<{ <{
s5 s6 XCHG2 -1 PUSHINT
257 PUSHINT
STIX
s0 s3 XCHG2
STSLICER
s0 s1 XCHG s0 s1 XCHG
STSLICER
1 STI 1 STI
NEWC s1 s2 XCHG
s2 PUSH 257 PUSHINT
ISNULL STIX
NOT }> PUSHCONT
<{ <{
-1 PUSHINT s2 POP
s0 s1 XCHG 0 PUSHINT
1 STI
s1 s2 XCHG
257 PUSHINT
STIX
}> PUSHCONT
<{
s2 POP
0 PUSHINT
ROT
1 STI
}> PUSHCONT
IFELSE
ROT ROT
s0 PUSH 1 STI
ISNULL }> PUSHCONT
<{ IFELSE
s0 POP ROT
0 PUSHINT s0 PUSH
s0 s1 XCHG ISNULL
2 STU <{
}> PUSHCONT s0 POP
<{ 0 PUSHINT
STSLICER
}> PUSHCONT
IFELSE
ENDC
s0 s1 XCHG s0 s1 XCHG
STREF 2 STU
}> CALLREF }> PUSHCONT
<{
STSLICER
}> PUSHCONT
IFELSE
ENDC
s0 s1 XCHG
STREF
ENDC ENDC
107886: 107886:

2
sources/output/jetton_TONBWallet.md

@ -1,6 +1,6 @@
# TACT Compilation Report # TACT Compilation Report
Contract: TONBWallet Contract: TONBWallet
BOC Size: 1650 bytes BOC Size: 2048 bytes
# Types # Types
Total Types: 27 Total Types: 27

2
sources/output/jetton_TONBWallet.pkg

File diff suppressed because one or more lines are too long

6
sources/output/jetton_TONBWallet.ts

@ -1395,9 +1395,9 @@ function dictValueParserWithdraw(): DictionaryValue<Withdraw> {
} }
} }
async function TONBWallet_init(master: Address, owner: Address) { async function TONBWallet_init(master: Address, owner: Address) {
const __init = 'te6ccgEBBwEAawABFP8A9KQT9LzyyAsBAgFiAgMCAs0EBQAJoUrd4AsAAdQBHWXBtbXAGyMwGBVUg2zzJgYAbFBWgQEBzwBQA88WAc8WygDIIm6zmn8BygASgQEBzwCVMnBYygDiWCBulTBwAcsBks8W4skBzA=='; const __init = 'te6ccgEBBgEAZgABFP8A9KQT9LzyyAsBAgFiAgMCAs0EBQAJoUrd4AsAAdQAhWXBtbXAGyMwGBVUgUFaBAQHPAFADzxYBzxbKAMgibrOafwHKABKBAQHPAJUycFjKAOJYIG6VMHABywGSzxbiyQHMyY=';
const __code = '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'; const __code = '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';
const __system = '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'; const __system = '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';
let systemCell = Cell.fromBase64(__system); let systemCell = Cell.fromBase64(__system);
let builder = new TupleBuilder(); let builder = new TupleBuilder();
builder.writeCell(systemCell); builder.writeCell(systemCell);

9
sources/staking.tact

@ -65,11 +65,10 @@ trait StakingTrait {
}); });
i = i + 1; i = i + 1;
} }
// self.withdrawal_requests = WithdrawalRequests{ self.withdrawal_requests = WithdrawalRequests{
// addresses: addresses, addresses: emptyMap(),
// amounts: amounts amounts: emptyMap()
// }; };
// todo: initialize withdrawal_requests
} }
fun requestWithdrawal(address: Address, value: Int) { fun requestWithdrawal(address: Address, value: Int) {

20
sources/tests/__snapshots__/jetton.spec.ts.snap

@ -13,14 +13,14 @@ exports[`jetton should deploy and deposit the wallet with the correct sum of mon
}, },
"bounce": true, "bounce": true,
"from": "kQAI-3FJVc_ywSuY4vq0bYrzR7S4Och4y7bTU_i5yLOB3A6P", "from": "kQAI-3FJVc_ywSuY4vq0bYrzR7S4Och4y7bTU_i5yLOB3A6P",
"to": "kQC21U5V6OpVNUMgmbDF89Gv4-nNbCQraGZW6CyNxjZ54mIG", "to": "kQBvwIQdhyi7sgezjikEBunv00MZvrP3rVPifHhOJqmJAvYq",
"type": "internal", "type": "internal",
"value": 1200000000n, "value": 1200000000n,
}, },
"type": "received", "type": "received",
}, },
{ {
"gasUsed": 37309n, "gasUsed": 31768n,
"type": "processed", "type": "processed",
}, },
{ {
@ -31,10 +31,10 @@ exports[`jetton should deploy and deposit the wallet with the correct sum of mon
"type": "cell", "type": "cell",
}, },
"bounce": false, "bounce": false,
"from": "kQC21U5V6OpVNUMgmbDF89Gv4-nNbCQraGZW6CyNxjZ54mIG", "from": "kQBvwIQdhyi7sgezjikEBunv00MZvrP3rVPifHhOJqmJAvYq",
"to": "kQBX5jl-CCnwNVNcNfQEr5mWWfNCD7wLX88zZLoP6HgwGPXa", "to": "kQAXvQx5G-trrAjtFVR0nXB8G-6sbR4B5dYUe7tCPrx4A3CO",
"type": "internal", "type": "internal",
"value": 13474000n, "value": 11365000n,
}, },
], ],
"type": "sent", "type": "sent",
@ -43,15 +43,15 @@ exports[`jetton should deploy and deposit the wallet with the correct sum of mon
"messages": [ "messages": [
{ {
"body": { "body": {
"cell": "x{178D4519000000000000000043B9ACA008016DAA9CABD1D4AA6A864133618BE7A35FC7D39AD84856D0CCADD0591B8C6CF3C500023EDC525573FCB04AE638BEAD1B62BCD1ED2E0E721E32EDB4D4FE2E722CE07702_} "cell": "x{178D4519000000000000000043B9ACA00800DF81083B0E5177640F671C52080DD3DFA686337D67EF5AA7C4F8F09C4D53120500023EDC525573FCB04AE638BEAD1B62BCD1ED2E0E721E32EDB4D4FE2E722CE07702_}
x{80000000000000000000000000000000000000000000000000000000000000002002BF31CBF0414F81AA9AE1AFA0257CCCB2CF9A107DE05AFE799B25D07F43C180C4_}", x{80000000000000000000000000000000000000000000000000000000000000002000BDE863C8DF5B5D604768AAA3A4EB83E0DF756368F00F2EB0A3DDDA11F5E3C01C_}",
"type": "cell", "type": "cell",
}, },
"bounce": false, "bounce": false,
"from": "kQC21U5V6OpVNUMgmbDF89Gv4-nNbCQraGZW6CyNxjZ54mIG", "from": "kQBvwIQdhyi7sgezjikEBunv00MZvrP3rVPifHhOJqmJAvYq",
"to": "kQCIAtWss1aC4r_RS9uo0BqWrfh2tc-AhjmJAY_eXbQ5ALyd", "to": "kQAKmw3UOWRVLND774ZJhBWT20MKLWdpluTN3dv7Q2tYdaFp",
"type": "internal", "type": "internal",
"value": 30513000n, "value": 28081000n,
}, },
], ],
"type": "sent", "type": "sent",

20
sources/utils/config.ts

@ -1,5 +1,5 @@
import { TonClient, Address, WalletContractV3R2 } from "ton"; import { TonClient, Address, WalletContractV3R2, WalletContractV4 } from "ton";
import { mnemonicToPrivateKey } from "ton-crypto"; import { mnemonicToPrivateKey } from "ton-crypto";
import { buildOnchainMetadata } from "./helpers"; import { buildOnchainMetadata } from "./helpers";
@ -9,16 +9,24 @@ export const client = new TonClient({
}) })
let mnemonics = "basic security merge opera inject core melody polar become force cool glance history order warfare consider company slim twice balcony scare shoot winner rude"; let mnemonics = "basic security merge opera inject core melody polar become force cool glance history order warfare consider company slim twice balcony scare shoot winner rude";
let mnemonics2 = "road learn slow crucial mixed grunt copy ribbon coyote shrimp onion pledge any tornado rebel three glimpse winner bless thunder immune february coin egg"
// read more about wallet apps https://ton.org/docs/participate/wallets/apps#tonhub-test-environment // read more about wallet apps https://ton.org/docs/participate/wallets/apps#tonhub-test-environment
export async function wallet_data() { export async function wallet_data(w: number = 0) {
let keyPair = await mnemonicToPrivateKey(mnemonics.split(" ")); let keyPair = await mnemonicToPrivateKey(mnemonics.split(" "));
let secretKey = keyPair.secretKey; let secretKey = keyPair.secretKey;
//Create deployment wallet contract //Create deployment wallet contract
let wallet_contract = WalletContractV3R2.create({ workchain, publicKey: keyPair.publicKey }); let wallet_contract = WalletContractV3R2.create({ workchain, publicKey: keyPair.publicKey });
if (w == 1) {
keyPair = await mnemonicToPrivateKey(mnemonics2.split(" "));
secretKey = keyPair.secretKey;
wallet_contract = WalletContractV4.create({ workchain, publicKey: keyPair.publicKey });
}
let my_wallet = client.open(wallet_contract); let my_wallet = client.open(wallet_contract);
return { my_wallet, secretKey, keyPair }; return { my_wallet, secretKey, keyPair };
} }
//workchain = 1 - masterchain (expensive operation cost, validator's election contract works here) //workchain = 1 - masterchain (expensive operation cost, validator's election contract works here)
//workchain = 0 - basechain (normal operation cost, user's contracts works here) //workchain = 0 - basechain (normal operation cost, user's contracts works here)
export let workchain = 0; //we are working in basechain. export let workchain = 0; //we are working in basechain.
@ -28,9 +36,11 @@ export let workchain = 0; //we are working in basechain.
// - Data is stored on-chain (except for the image data itself) // - Data is stored on-chain (except for the image data itself)
export const jettonParams = { export const jettonParams = {
name: "TactJet", name: "TONB DEMO",
description: "This is description of Test tact jetton", description: "TON Banking",
image: "https://ipfs.io/ipfs/QmbPZjC1tuP6ickCCBtoTCQ9gc3RpkbKx7C1LMYQdcLwti" // Image url // image: "https://ipfs.io/ipfs/QmbPZjC1tuP6ickCCBtoTCQ9gc3RpkbKx7C1LMYQdcLwti" // Image url
image: "https://cache.tonapi.io/imgproxy/gZXLNT_UkpFUSUUbTQsilCqwq_tXa4Kgmf55b5SmVQo/rs:fill:200:200:1/g:no/aHR0cHM6Ly90b24ub3JnL2Rvd25sb2FkL3Rvbl9zeW1ib2wucG5n.webp",
symbol: "TONB"
}; };
// Owner should usually be the deploying wallet's address. // Owner should usually be the deploying wallet's address.

29
sources/utils/interactions.ts

@ -1,5 +1,5 @@
import { Cell, Address, internal, beginCell, contractAddress, toNano, fromNano, SendMode } from "ton"; import { Cell, Address, internal, beginCell, contractAddress, toNano, fromNano, SendMode } from "ton";
import { storeDeposit, storeWithdraw } from "../output/jetton_TONB"; import { storeDeposit, storeWithdraw, storeTokenTransfer, storeBlacklistWallet } from "../output/jetton_TONB";
import { TON } from "./helpers"; import { TON } from "./helpers";
import { wallet_data, owner, default_content, workchain } from './config'; import { wallet_data, owner, default_content, workchain } from './config';
import { TONB } from "../output/jetton_TONB"; import { TONB } from "../output/jetton_TONB";
@ -34,7 +34,32 @@ export async function withdraw(wallet: any, secretKey: Buffer, value_: bigint |
let msg_body_b = beginCell(); let msg_body_b = beginCell();
storeWithdraw({ amount: value as bigint, $$type: 'Withdraw' })(msg_body_b); storeWithdraw({ amount: value as bigint, $$type: 'Withdraw' })(msg_body_b);
let msg_body = msg_body_b.endCell(); let msg_body = msg_body_b.endCell();
let msg_value = toNano('0.05'); let msg_value = toNano('0.11');
await sendMessage(wallet, secretKey, { value: msg_value, to: tonb, body: msg_body });
}
export async function transfer(wallet: any, secretKey: Buffer, value_: bigint | number, tonb: Address, to: Address) {
let value = BigInt(value_);
let msg_body_b = beginCell();
storeTokenTransfer({
amount: value as bigint, destination: to, queryId: 0n,
forwardTonAmount: 0n, $$type: 'TokenTransfer',
forwardPayload: beginCell().endCell(),
responseDestination: null, customPayload: null
})(msg_body_b);
let msg_body = msg_body_b.endCell();
let msg_value = toNano('0.11');
let wallet_addr = await getWalletAddress(tonb, wallet.address);
// log about the transfer with the wallet address, amount, and emojis
console.log('📤Sending transfer message to ', wallet_addr, ' with value ', value_, '💎TON');
await sendMessage(wallet, secretKey, { value: msg_value, to: wallet_addr, body: msg_body });
}
export async function blacklistAddress(wallet: any, secretKey: Buffer, tonb: Address, address: Address) {
let msg_body_b = beginCell();
storeBlacklistWallet({ wallet: address, $$type: 'BlacklistWallet' })(msg_body_b);
let msg_body = msg_body_b.endCell();
let msg_value = toNano('0.11');
await sendMessage(wallet, secretKey, { value: msg_value, to: tonb, body: msg_body }); await sendMessage(wallet, secretKey, { value: msg_value, to: tonb, body: msg_body });
} }

2
sources/utils/rmlogs.sh

@ -1,3 +1,3 @@
#!/bin/bash #!/bin/bash
for file in $(find sources/output -type f); do sed -i 's/,\ {\ logs:\ res.vmLogs\ }//g' $file; done for file in $(find sources/output -type f); do sed -i 's/,\ {\ logs:\ res.vmLogs\ }//g' $file; done
for file in $(find sources/output -type f); do sed -i 's/stringtoreplace//g' $file; done for file in $(find sources/output -type f); do sed -i 's/,\ {\ logs:\ res.logs\ }//g' $file; done

24
sources/wallet.tact

@ -1,6 +1,7 @@
import "@stdlib/ownable"; import "@stdlib/ownable";
import "./messages"; import "./messages";
import "./linker"; import "./linker";
import "./constants";
@ -40,7 +41,7 @@ contract TONBWallet {
if (msg.forwardTonAmount > 0) { if (msg.forwardTonAmount > 0) {
fwdCount = 2; fwdCount = 2;
} }
require(ctx.value > fwdCount * fwdFee + 2 * self.gasConsumption + self.minTonsForStorage, "Invalid value"); require(ctx.value > transfer_gas_consumption, "Invalid value");
// Send tokens // Send tokens
let init: StateInit = initOf TONBWallet(self.master, msg.destination); let init: StateInit = initOf TONBWallet(self.master, msg.destination);
@ -66,12 +67,29 @@ contract TONBWallet {
} }
receive(msg: TokenTransferInternal) { receive(msg: TokenTransferInternal) {
if(self.blacklisted){
send(SendParameters{
to: self.master,
value: 0,
mode: SendRemainingValue,
body: TokenBurnNotification{
queryId: msg.queryId,
amount: msg.amount,
owner: self.owner,
responseAddress: self.owner
}.toCell()
});
return;
}
// Check sender // Check sender
let ctx: Context = context(); let ctx: Context = context();
if (self.linker == null) { if (self.linker == null) {
self.linker = msg.setLinker; if (msg.setLinker != null) {
self.linker_address = msg.setLinkerAddress; self.linker = msg.setLinker;
self.linker_address = msg.setLinkerAddress;
}
// todo: request a linker otherwise
} }
if (ctx.sender != self.master && ctx.sender != self.linker_address) { if (ctx.sender != self.master && ctx.sender != self.linker_address) {
let sinit: StateInit = initOf TONBWallet(self.master, msg.from); let sinit: StateInit = initOf TONBWallet(self.master, msg.from);

35
yarn.lock

@ -1229,6 +1229,11 @@ cli-spinners@^2.6.1:
resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz" resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz"
integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==
cliclopts@^1.1.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/cliclopts/-/cliclopts-1.1.1.tgz#69431c7cb5af723774b0d3911b4c37512431910f"
integrity sha512-dJk8y+TJmOy9Kqha0aWN0rwM5E5EQCVjhl2GTz1CrkqzxkQZ26/hyrNmy7lwePdZc4iNcdHL1tTdcIBeNQhmww==
cliui@^8.0.1: cliui@^8.0.1:
version "8.0.1" version "8.0.1"
resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz" resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz"
@ -2414,7 +2419,7 @@ minimatch@^3.0.4, minimatch@^3.1.1:
dependencies: dependencies:
brace-expansion "^1.1.7" brace-expansion "^1.1.7"
minimist@^1.2.5: minimist@^1.2.0, minimist@^1.2.5:
version "1.2.7" version "1.2.7"
resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz" resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz"
integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==
@ -2944,6 +2949,15 @@ strip-json-comments@^3.1.1:
resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz"
integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
subcommand@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/subcommand/-/subcommand-2.1.1.tgz#66ba790cc72564049eface644c4a24291a4829c7"
integrity sha512-cm7TQq9I8dA5LKUr+r8W7RzQlLsmTdCr6wXmjYueOoh/bQu55ODEw7GFhT42pUyoaLtO2rgmx1+8cSIjY9lR9g==
dependencies:
cliclopts "^1.1.0"
debug "^4.1.1"
minimist "^1.2.0"
supports-color@^5.3.0: supports-color@^5.3.0:
version "5.5.0" version "5.5.0"
resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz"
@ -3030,7 +3044,14 @@ ton-contract-executor@^0.6.0:
dependencies: dependencies:
bn.js "^5.2.0" bn.js "^5.2.0"
ton-core@>=0.44.0, ton-core@^0.46.0: ton-core@>=0.47.0:
version "0.47.0"
resolved "https://registry.yarnpkg.com/ton-core/-/ton-core-0.47.0.tgz#1ce90a1abe3f05d0651e95962f2b9fdbd1b4e13c"
integrity sha512-v5JEhJG/EYtKaI8PtmV5lXAIveSK+Bb+yyukRFmUpJ1Y9YmkvBowZ1n4lubKCSDhlQy8JO7M5VKA5fj15qZjwQ==
dependencies:
symbol.inspect "1.0.1"
ton-core@^0.46.0:
version "0.46.0" version "0.46.0"
resolved "https://registry.yarnpkg.com/ton-core/-/ton-core-0.46.0.tgz#4138606fccf7fa45dc5c6cd6dcf1d1f17b2d4215" resolved "https://registry.yarnpkg.com/ton-core/-/ton-core-0.46.0.tgz#4138606fccf7fa45dc5c6cd6dcf1d1f17b2d4215"
integrity sha512-QUOlL98652rsOPTIvB01+MsAgLI1ehvpsngYzNWr7pxHOk4xk64Adq0StTmqGEchkzjhNowIo3gzwGGPrxo3zw== integrity sha512-QUOlL98652rsOPTIvB01+MsAgLI1ehvpsngYzNWr7pxHOk4xk64Adq0StTmqGEchkzjhNowIo3gzwGGPrxo3zw==
@ -3076,10 +3097,10 @@ ton-nodejs@^1.4.3:
resolved "https://registry.npmjs.org/ton-nodejs/-/ton-nodejs-1.4.3.tgz" resolved "https://registry.npmjs.org/ton-nodejs/-/ton-nodejs-1.4.3.tgz"
integrity sha512-Thwl2lmYuaaciFs0CTybb0ZPwscl0ANUriv3QUP494ttRWKT2rxoyydnepVw1hWDzXeDh3Rxn0XA7vN1hySVyg== integrity sha512-Thwl2lmYuaaciFs0CTybb0ZPwscl0ANUriv3QUP494ttRWKT2rxoyydnepVw1hWDzXeDh3Rxn0XA7vN1hySVyg==
ton-tact@^0.8.11: ton-tact@^0.9.2:
version "0.8.11" version "0.9.2"
resolved "https://registry.yarnpkg.com/ton-tact/-/ton-tact-0.8.11.tgz#e348eafe1d0d85819814e53cddf21e28c082e8db" resolved "https://registry.yarnpkg.com/ton-tact/-/ton-tact-0.9.2.tgz#e8eca436b431c5fe2055a567d7f7d941f283b606"
integrity sha512-5RtWnNbKM6f/Z8ixbgTubmCMTRdzLILCdW2NYf+b1XFd6ImXMm47lQNosuF+alCdWzfwX0E+KQSbqRSK41AJsA== integrity sha512-QY9gScDQeSu5gJ0S3sRmStSDtunUtiiJKe7oyZSnqAoezII8y0qchOe9hY//MRkp2yxc9lEfxtM4dFW8yiYe5g==
dependencies: dependencies:
"@ipld/dag-pb" "2.1.18" "@ipld/dag-pb" "2.1.18"
"@types/tmp" "^0.2.3" "@types/tmp" "^0.2.3"
@ -3093,7 +3114,7 @@ ton-tact@^0.8.11:
prando "^6.0.1" prando "^6.0.1"
qs "^6.11.0" qs "^6.11.0"
tmp "^0.2.1" tmp "^0.2.1"
ton-core ">=0.44.0" ton-core ">=0.47.0"
ton-crypto "^3.2.0" ton-crypto "^3.2.0"
tvm-disassembler "^2.0.0" tvm-disassembler "^2.0.0"
zod "^3.20.2" zod "^3.20.2"

Loading…
Cancel
Save