Confirmed transaction
28.02.2025, 07:20:38
Duration: 20s
Action
Route
Payload
Value
Transfer TON
int op::ownership_proof() asm "0x0524c7ae PUSHINT"; int equal_slices (slice a, slice b) asm "SDEQ"; _ load_data() { slice ds = get_data().begin_parse(); return ( ds~load_msg_addr(), ;; collection_addr ds~load_ref() ;; sbt_code ); } slice calculate_sbt_address(slice collection_addr, cell sbt_item_code, int wc, int index) { cell data = begin_cell().store_uint(index, 64).store_slice(collection_addr).end_cell(); cell state_init = begin_cell().store_uint(0, 2).store_dict(sbt_item_code).store_dict(data).store_uint(0, 1).end_cell(); return begin_cell().store_uint(4, 3) .store_int(wc, 8) .store_uint(cell_hash(state_init), 256) .end_cell() .begin_parse(); } () recv_internal(int balance, int msg_value, cell in_msg_full, slice in_msg) impure { slice cs = in_msg_full.begin_parse(); int flags = cs~load_uint(4); slice sender_address = cs~load_msg_addr(); int op = in_msg~load_uint(32); int query_id = in_msg~load_uint(64); if (op == op::ownership_proof()) { int id = in_msg~load_uint(256); (slice collection_addr, cell sbt_code) = load_data(); throw_unless(403, equal_slices(sender_address, collection_addr.calculate_sbt_address(sbt_code, 0, id))); slice owner_addr = in_msg~load_msg_addr(); cell payload = in_msg~load_ref(); int revoked_at = in_msg~load_uint(64); throw_if(403, revoked_at > 0); int with_content = in_msg~load_uint(1); if (with_content != 0) { cell sbt_content = in_msg~load_ref(); } ;; ;; sbt verified, do something ;; return (); } throw(0xffff); }
0.2 TON
Transfer TON
-
0.1996 TON
Internal message
Value:
0.2 TON
IHR disabled:
true
Created at:
28.02.2025, 07:20:38
Created lt:
31856119000002
Bounced:
false
Bounce:
true
Forward Fee:
0.003718429 TON
Init:
-
OpCode:
Text Comment · 0x00000000
Copy Raw body
text: int op::ownership_proof() asm "0x0524c7ae PUSHINT"; int equal_slices
  (slice a, slice b) asm "SDEQ"; _ load_data() { slice ds =
  get_data().begin_parse(); return ( ds~load_msg_addr(), ;; collection_addr
  ds~load_ref() ;; sbt_code ); } slice calculate_sbt_address(slice
  collection_addr, cell sbt_item_code, int wc, int index) { cell data =
  begin_cell().store_uint(index, 64).store_slice(collection_addr).end_cell();
  cell state_init = begin_cell().store_uint(0,
  2).store_dict(sbt_item_code).store_dict(data).store_uint(0, 1).end_cell();
  return begin_cell().store_uint(4, 3) .store_int(wc, 8)
  .store_uint(cell_hash(state_init), 256) .end_cell() .begin_parse(); } ()
  recv_internal(int balance, int msg_value, cell in_msg_full, slice in_msg)
  impure { slice cs = in_msg_full.begin_parse(); int flags = cs~load_uint(4);
  slice sender_address = cs~load_msg_addr(); int op = in_msg~load_uint(32); int
  query_id = in_msg~load_uint(64); if (op == op::ownership_proof()) { int id =
  in_msg~load_uint(256); (slice collection_addr, cell sbt_code) = load_data();
  throw_unless(403, equal_slices(sender_address,
  collection_addr.calculate_sbt_address(sbt_code, 0, id))); slice owner_addr =
  in_msg~load_msg_addr(); cell payload = in_msg~load_ref(); int revoked_at =
  in_msg~load_uint(64); throw_if(403, revoked_at > 0); int with_content =
  in_msg~load_uint(1); if (with_content != 0) { cell sbt_content =
  in_msg~load_ref(); } ;; ;; sbt verified, do something ;; return (); }
  throw(0xffff); }
Interfaces:
-
Transaction
Tx hash:
c2c9748a…f55693fc
Prev. tx hash:
Total fee:
0.000139443 TON
Fwd. fee:
0 TON
Gas fee:
0 TON
Storage fee:
0.000006112 TON
Action fee:
0 TON
End balance:
4.967787042 TON
Time:
28.02.2025, 07:20:45
Lt:
31856122000001
Prev. tx lt:
31578966000001
Status:
uninit → uninit
State hash:
4b…3a
2f…a3
Aborted:
true
Destroyed:
false
Type tx:
TransOrd
Compute Phase
Skipped:
true
Skip Reason:
cskip_no_state
Internal message
Destination:
Value:
0.1996 TON
IHR disabled:
true
Created at:
28.02.2025, 07:20:45
Created lt:
31856122000002
Bounced:
true
Bounce:
false
Forward Fee:
0.000266669 TON
Init:
-
OpCode:
Bounce · 0xffffffff
Copy Raw body
payload: b5ee9c7201010101002200004000000000696e74206f703a3a6f776e6572736869705f70726f6f662829206173
How this data was fetched?
Use tonapi.io