tx · 4uJtxdbLaLrPS3kgTni9zJwkMeNqsUGw22GAt8f76uq6 3N6StJdgmTfARsRNn9Xt5rDYEs3pr4KGy1v: -0.01000000 Waves 2022.11.30 18:50 [2340041] smart account 3N6StJdgmTfARsRNn9Xt5rDYEs3pr4KGy1v > SELF 0.00000000 Waves
{ "type": 13, "id": "4uJtxdbLaLrPS3kgTni9zJwkMeNqsUGw22GAt8f76uq6", "fee": 1000000, "feeAssetId": null, "timestamp": 1669823418398, "version": 2, "chainId": 84, "sender": "3N6StJdgmTfARsRNn9Xt5rDYEs3pr4KGy1v", "senderPublicKey": "66YPkXzbRxLZ5V6d45kamYQJicVit8NqDULUt881P4kE", "proofs": [ "3kRVcfsd41RSXDz9ZGuRWUS8VAhm7WHiS5PBAD7CyKPcefY3wfznvK6JJYJzzi5PLxuywbMiDSfyE4HN2rttYjY" ], "script": "base64:AAIFAAAAAAAAAAoIAhIECgIIARIAAAAAAwAAAAAHYXNzZXRJZAIAAAAsSEhtYUZRcFVvYndLeHpqejRFQ2FCUHRvRjY5a3VqS3dVMmNvemFVelRzZ3YBAAAADWdldEFzc2V0Qnl0ZXMAAAABAAAACmFzc2V0SWRTdHIDCQAAAAAAAAIFAAAACmFzc2V0SWRTdHICAAAABVdBVkVTBQAAAAR1bml0CQACWQAAAAEFAAAACmFzc2V0SWRTdHIBAAAACmdldEJhbGFuY2UAAAABAAAAB2Fzc2V0SWQEAAAAByRtYXRjaDAFAAAAB2Fzc2V0SWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQEAAAAAXgFAAAAByRtYXRjaDAICQAD7wAAAAEFAAAABHRoaXMAAAAJYXZhaWxhYmxlCQAD8AAAAAIFAAAABHRoaXMJAQAAAAV2YWx1ZQAAAAEFAAAAB2Fzc2V0SWQAAAACAAAAAWkBAAAACHdpdGhkcmF3AAAAAgAAAAphc3NldElkU3RyAAAAC2Fzc2V0QW1vdW50BAAAAAdiYWxhbmNlCQEAAAAKZ2V0QmFsYW5jZQAAAAEJAAJZAAAAAQUAAAAHYXNzZXRJZAMJAABmAAAAAgUAAAALYXNzZXRBbW91bnQFAAAAB2JhbGFuY2UJAAACAAAAAQIAAAAqVGhpcyBhbW91bnQgaXMgbm90IGF2YWlsYWJsZSBmb3IgdGhpcyB1c2VyCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAALYXNzZXRBbW91bnQJAQAAAA1nZXRBc3NldEJ5dGVzAAAAAQUAAAAKYXNzZXRJZFN0cgUAAAADbmlsAAAAAWkBAAAABnN1cHBseQAAAAADAwkBAAAAAiE9AAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQYJAAAAAAAAAggJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAGYW1vdW50AAAAAAAAAAAACQAAAgAAAAECAAAAHDEgcGF5bWVudCBoYXMgdG8gYmUgYXR0YWNoZWQFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5s4CngA==", "height": 2340041, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: FuynTNhdX3Ftn4wf8CyvqpZfP7MT8onQFvet2GJSZPoT Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
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 17.57 ms ◑![]()