tx · AaSQB7PRxDUHKRnXeknKP2j13o5uwgyEp63G21MibcWF 3MrsntBqAcZGmxub2mxgn7HyqCixjThAtS8: -0.00200000 Waves 2022.09.05 16:09 [2216026] smart account 3MrsntBqAcZGmxub2mxgn7HyqCixjThAtS8 > SELF 0.00000000 Waves
{ "type": 13, "id": "AaSQB7PRxDUHKRnXeknKP2j13o5uwgyEp63G21MibcWF", "fee": 200000, "feeAssetId": null, "timestamp": 1662394174981, "version": 2, "chainId": 84, "sender": "3MrsntBqAcZGmxub2mxgn7HyqCixjThAtS8", "senderPublicKey": "GWwUEwyvsQ6Tn8WgSkKUbNVt8rdQJRqAWov6fQoSzZRv", "proofs": [ "2sGpfXfkYxz6EdDm2Ym391hgFCopdGCZKPGRaHcDKbcLmKiUrdQ4KRrJyKnnbV2i5g7V6k3tx6KeTvNo2FpyicX2" ], "script": "base64:AAIFAAAAAAAAAAQIAhIAAAAAAgAAAAAFTVVMVDgAAAAAAAX14QAAAAAABU1VTFQ0AAAAAAAAACcQAAAAAQAAAAFpAQAAAAVpc3N1ZQAAAAAEAAAAA2lkeAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzAgAAAA1uZXh0X2ZyZWVfaWR4AAAAAAAAAAABBAAAAAt1c2VyQWRkcmVzcwgFAAAAAWkAAAAGY2FsbGVyBAAAAARwbXRzCAUAAAABaQAAAAhwYXltZW50cwQAAAADcG10CQABkQAAAAIFAAAABHBtdHMAAAAAAAAAAAAEAAAACnBtdEFzc2V0SWQIBQAAAANwbXQAAAAHYXNzZXRJZAQAAAAGcG10QW10CAUAAAADcG10AAAABmFtb3VudAMJAQAAAAIhPQAAAAIJAAGQAAAAAQUAAAAEcG10cwAAAAAAAAAAAQkAAAIAAAABAgAAABVvbmx5IDEgcG10IGlzIGFsbG93ZWQDCQEAAAACIT0AAAACBQAAAAZwbXRBbXQJAABpAAAAAgkAAGgAAAACAAAAAAAAAAAPBQAAAAVNVUxUOAAAAAAAAAAACgkAAAIAAAABAgAAABpleGFjdCAxLjUgV0FWRVMgaXMgYWxsb3dlZAMJAQAAAAIhPQAAAAIFAAAACnBtdEFzc2V0SWQFAAAABHVuaXQJAAACAAAAAQIAAAAVb25seSBXQVZFUyBpcyBhbGxvd2VkAwkBAAAACWlzRGVmaW5lZAAAAAEJAAQbAAAAAgUAAAAEdGhpcwkABCUAAAABBQAAAAt1c2VyQWRkcmVzcwkAAAIAAAABAgAAACNhZGRyZXNzIGhhcyBiZWVuIGFscmVhZHkgcmVnaXN0ZXJlZAQAAAAJaXNzdWVkQW10CQAAaQAAAAIJAABoAAAAAgAAAAAAAAAD6AUAAAAFTVVMVDQFAAAAA2lkeAQAAAAMYXNzZXRJZFN0cjU4CQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAABHRoaXMCAAAACGFzc2V0X2lkAgAAAAAEAAAAC2lzc3VlUmVzdWx0AwkBAAAAAiE9AAAAAgUAAAAMYXNzZXRJZFN0cjU4AgAAAAAEAAAACGlzc3VlQWN0CQAEQgAAAAUCAAAADUFydE11clNlcmdNb3ICAAAACnRlc3QgdG9rZW4FAAAACWlzc3VlZEFtdAAAAAAAAAAABAYEAAAAB2Fzc2V0SWQJAAQ4AAAAAQUAAAAIaXNzdWVBY3QJAAUUAAAAAgkABEwAAAACBQAAAAhpc3N1ZUFjdAUAAAADbmlsCQACWAAAAAEFAAAAB2Fzc2V0SWQEAAAACnJlaXNzdWVBY3QJAQAAAAdSZWlzc3VlAAAAAwkAAlkAAAABBQAAAAxhc3NldElkU3RyNTgFAAAACWlzc3VlZEFtdAYJAAUUAAAAAgkABEwAAAACBQAAAApyZWlzc3VlQWN0BQAAAANuaWwFAAAADGFzc2V0SWRTdHI1OAkABE0AAAACCQAETgAAAAIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADW5leHRfZnJlZV9pZHgJAABkAAAAAgUAAAADaWR4AAAAAAAAAAABCQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACCQAEJQAAAAEFAAAAC3VzZXJBZGRyZXNzBgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAhhc3NldF9pZAgFAAAAC2lzc3VlUmVzdWx0AAAAAl8yBQAAAANuaWwIBQAAAAtpc3N1ZVJlc3VsdAAAAAJfMQkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAALdXNlckFkZHJlc3MFAAAACWlzc3VlZEFtdAkAAlkAAAABCAUAAAALaXNzdWVSZXN1bHQAAAACXzIAAAAApkK3sA==", "height": 2216026, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: ANaMTygWTTPaKaAAjUMqymt31pjwKiisJUzHRAaGDCct Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let MULT8 = 100000000 | |
5 | + | ||
6 | + | let MULT4 = 10000 | |
7 | + | ||
8 | + | @Callable(i) | |
9 | + | func issue () = { | |
10 | + | let idx = valueOrElse(getInteger(this, "next_free_idx"), 1) | |
11 | + | let userAddress = i.caller | |
12 | + | let pmts = i.payments | |
13 | + | let pmt = pmts[0] | |
14 | + | let pmtAssetId = pmt.assetId | |
15 | + | let pmtAmt = pmt.amount | |
16 | + | if ((size(pmts) != 1)) | |
17 | + | then throw("only 1 pmt is allowed") | |
18 | + | else if ((pmtAmt != ((15 * MULT8) / 10))) | |
19 | + | then throw("exact 1.5 WAVES is allowed") | |
20 | + | else if ((pmtAssetId != unit)) | |
21 | + | then throw("only WAVES is allowed") | |
22 | + | else if (isDefined(getBoolean(this, toString(userAddress)))) | |
23 | + | then throw("address has been already registered") | |
24 | + | else { | |
25 | + | let issuedAmt = ((1000 * MULT4) / idx) | |
26 | + | let assetIdStr58 = valueOrElse(getString(this, "asset_id"), "") | |
27 | + | let issueResult = if ((assetIdStr58 != "")) | |
28 | + | then { | |
29 | + | let issueAct = Issue("ArtMurSergMor", "test token", issuedAmt, 4, true) | |
30 | + | let assetId = calculateAssetId(issueAct) | |
31 | + | $Tuple2([issueAct], toBase58String(assetId)) | |
32 | + | } | |
33 | + | else { | |
34 | + | let reissueAct = Reissue(fromBase58String(assetIdStr58), issuedAmt, true) | |
35 | + | $Tuple2([reissueAct], assetIdStr58) | |
36 | + | } | |
37 | + | (([IntegerEntry("next_free_idx", (idx + 1)), BooleanEntry(toString(userAddress), true), StringEntry("asset_id", issueResult._2)] ++ issueResult._1) :+ ScriptTransfer(userAddress, issuedAmt, fromBase58String(issueResult._2))) | |
38 | + | } | |
39 | + | } | |
40 | + | ||
41 | + |
github/deemru/w8io/169f3d6 18.47 ms ◑![]()