tx · 3s3j7GGuwBQrw65dCGXmvJgu7bWxkUFXtJfNNXpf9o7m 3MxDTDQtnR7zpLuHygxgFzrqKZ2BSwzcjya: -0.00500000 Waves 2022.12.07 03:23 [2349207] smart account 3MxDTDQtnR7zpLuHygxgFzrqKZ2BSwzcjya > SELF 0.00000000 Waves
{ "type": 13, "id": "3s3j7GGuwBQrw65dCGXmvJgu7bWxkUFXtJfNNXpf9o7m", "fee": 500000, "feeAssetId": null, "timestamp": 1670372664559, "version": 2, "chainId": 84, "sender": "3MxDTDQtnR7zpLuHygxgFzrqKZ2BSwzcjya", "senderPublicKey": "Bm3TDSqnyHuJKQtVXyd4W48ydzeFwi28YoPCM4BTCwis", "proofs": [ "4VLxsURrSbAoYRpGHKUMsg67CGPqtxbQVmVUQ8A91HNrHNDXiPtaUdP9D28DyJa5urEH9nL4xfF9Nh6RKnHfULxG" ], "script": "base64:BgIKCAISBAoCCAESAAMAB2Fzc2V0SWQCLEhIbWFGUXBVb2J3S3h6ano0RUNhQlB0b0Y2OWt1akt3VTJjb3phVXpUc2d2AQ1nZXRBc3NldEJ5dGVzAQphc3NldElkU3RyAwkAAAIFCmFzc2V0SWRTdHICBVdBVkVTBQR1bml0CQDZBAEFCmFzc2V0SWRTdHIBCmdldEJhbGFuY2UBB2Fzc2V0SWQEByRtYXRjaDAFB2Fzc2V0SWQDCQABAgUHJG1hdGNoMAIEVW5pdAQBeAUHJG1hdGNoMAgJAO8HAQUEdGhpcwlhdmFpbGFibGUJAPAHAgUEdGhpcwkBBXZhbHVlAQUHYXNzZXRJZAIBaQEId2l0aGRyYXcCCmFzc2V0SWRTdHILYXNzZXRBbW91bnQEB2JhbGFuY2UJAQpnZXRCYWxhbmNlAQkA2QQBBQdhc3NldElkAwkAZgIFC2Fzc2V0QW1vdW50BQdiYWxhbmNlCQACAQIqVGhpcyBhbW91bnQgaXMgbm90IGF2YWlsYWJsZSBmb3IgdGhpcyB1c2VyCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgULYXNzZXRBbW91bnQJAQ1nZXRBc3NldEJ5dGVzAQUKYXNzZXRJZFN0cgUDbmlsAWkBBnN1cHBseQADAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABBgkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50AAAJAAIBAhwxIHBheW1lbnQgaGFzIHRvIGJlIGF0dGFjaGVkBQNuaWwBAnR4AQZ2ZXJpZnkACQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V56n4I8w==", "height": 2349207, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 6 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let assetId = "HHmaFQpUobwKxzjz4ECaBPtoF69kujKwU2cozaUzTsgv" | |
5 | + | ||
6 | + | func getAssetBytes (assetIdStr) = if ((assetIdStr == "WAVES")) | |
7 | + | then unit | |
8 | + | else fromBase58String(assetIdStr) | |
9 | + | ||
10 | + | ||
11 | + | func getBalance (assetId) = match assetId { | |
12 | + | case x: Unit => | |
13 | + | wavesBalance(this).available | |
14 | + | case _ => | |
15 | + | assetBalance(this, value(assetId)) | |
16 | + | } | |
17 | + | ||
18 | + | ||
19 | + | @Callable(i) | |
20 | + | func withdraw (assetIdStr,assetAmount) = { | |
21 | + | let balance = getBalance(fromBase58String(assetId)) | |
22 | + | if ((assetAmount > balance)) | |
23 | + | then throw("This amount is not available for this user") | |
24 | + | else [ScriptTransfer(i.caller, assetAmount, getAssetBytes(assetIdStr))] | |
25 | + | } | |
26 | + | ||
27 | + | ||
28 | + | ||
29 | + | @Callable(i) | |
30 | + | func supply () = if (if ((size(i.payments) != 1)) | |
31 | + | then true | |
32 | + | else (i.payments[0].amount == 0)) | |
33 | + | then throw("1 payment has to be attached") | |
34 | + | else nil | |
35 | + | ||
36 | + | ||
37 | + | @Verifier(tx) | |
38 | + | func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
39 | + |
github/deemru/w8io/169f3d6 29.64 ms ◑