tx · Ht3PgvpNn3adDKENsmQJ5eXFVQohXw5av8gve4HtWtCq

3MrsntBqAcZGmxub2mxgn7HyqCixjThAtS8:  -0.00200000 Waves

2022.09.05 19:34 [2216053] smart account 3MrsntBqAcZGmxub2mxgn7HyqCixjThAtS8 > SELF 0.00000000 Waves

{ "type": 13, "id": "Ht3PgvpNn3adDKENsmQJ5eXFVQohXw5av8gve4HtWtCq", "fee": 200000, "feeAssetId": null, "timestamp": 1662395749594, "version": 2, "chainId": 84, "sender": "3MrsntBqAcZGmxub2mxgn7HyqCixjThAtS8", "senderPublicKey": "GWwUEwyvsQ6Tn8WgSkKUbNVt8rdQJRqAWov6fQoSzZRv", "proofs": [ "42BaQQEBZKSDH7AmtGWhSpcFS1hff5KjMYHJiA3UpzKXodenZePkMzZPGcAKW1cwMh9pgRtPQrMRZbpEHm6UJfvr", "42BaQQEBZKSDH7AmtGWhSpcFS1hff5KjMYHJiA3UpzKXodenZePkMzZPGcAKW1cwMh9pgRtPQrMRZbpEHm6UJfvr" ], "script": "base64:AAIFAAAAAAAAAAQIAhIAAAAAAgAAAAAFTVVMVDgAAAAAAAX14QAAAAAABU1VTFQ0AAAAAAAAACcQAAAAAQAAAAFpAQAAAAVpc3N1ZQAAAAAEAAAAA2lkeAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzAgAAAA1uZXh0X2ZyZWVfaWR4AAAAAAAAAAABBAAAAAt1c2VyQWRkcmVzcwgFAAAAAWkAAAAGY2FsbGVyBAAAAARwbXRzCAUAAAABaQAAAAhwYXltZW50cwQAAAADcG10CQABkQAAAAIFAAAABHBtdHMAAAAAAAAAAAAEAAAACnBtdEFzc2V0SWQIBQAAAANwbXQAAAAHYXNzZXRJZAQAAAAGcG10QW10CAUAAAADcG10AAAABmFtb3VudAMJAQAAAAIhPQAAAAIJAAGQAAAAAQUAAAAEcG10cwAAAAAAAAAAAQkAAAIAAAABAgAAABVvbmx5IDEgcG10IGlzIGFsbG93ZWQDCQEAAAACIT0AAAACBQAAAAZwbXRBbXQJAABpAAAAAgkAAGgAAAACAAAAAAAAAAAPBQAAAAVNVUxUOAAAAAAAAAAACgkAAAIAAAABAgAAABpleGFjdCAxLjUgV0FWRVMgaXMgYWxsb3dlZAMJAQAAAAIhPQAAAAIFAAAACnBtdEFzc2V0SWQFAAAABHVuaXQJAAACAAAAAQIAAAAVb25seSBXQVZFUyBpcyBhbGxvd2VkAwkBAAAACWlzRGVmaW5lZAAAAAEJAAQbAAAAAgUAAAAEdGhpcwkABCUAAAABBQAAAAt1c2VyQWRkcmVzcwkAAAIAAAABAgAAACNhZGRyZXNzIGhhcyBiZWVuIGFscmVhZHkgcmVnaXN0ZXJlZAQAAAAJaXNzdWVkQW10CQAAaQAAAAIJAABoAAAAAgAAAAAAAAAD6AUAAAAFTVVMVDQFAAAAA2lkeAQAAAAMYXNzZXRJZFN0cjU4CQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAABHRoaXMCAAAACGFzc2V0X2lkAgAAAAAEAAAAC2lzc3VlUmVzdWx0AwkAAAAAAAACBQAAAAxhc3NldElkU3RyNTgCAAAAAAQAAAAIaXNzdWVBY3QJAARCAAAABQIAAAANQXJ0TXVyU2VyZ01vcgIAAAAKdGVzdCB0b2tlbgUAAAAJaXNzdWVkQW10AAAAAAAAAAAEBgQAAAAHYXNzZXRJZAkABDgAAAABBQAAAAhpc3N1ZUFjdAkABRQAAAACCQAETAAAAAIFAAAACGlzc3VlQWN0BQAAAANuaWwJAAJYAAAAAQUAAAAHYXNzZXRJZAQAAAAKcmVpc3N1ZUFjdAkBAAAAB1JlaXNzdWUAAAADCQACWQAAAAEFAAAADGFzc2V0SWRTdHI1OAUAAAAJaXNzdWVkQW10BgkABRQAAAACCQAETAAAAAIFAAAACnJlaXNzdWVBY3QFAAAAA25pbAUAAAAMYXNzZXRJZFN0cjU4CQAETQAAAAIJAAROAAAAAgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAANbmV4dF9mcmVlX2lkeAkAAGQAAAACBQAAAANpZHgAAAAAAAAAAAEJAARMAAAAAgkBAAAADEJvb2xlYW5FbnRyeQAAAAIJAAQlAAAAAQUAAAALdXNlckFkZHJlc3MGCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAACGFzc2V0X2lkCAUAAAALaXNzdWVSZXN1bHQAAAACXzIFAAAAA25pbAgFAAAAC2lzc3VlUmVzdWx0AAAAAl8xCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAAt1c2VyQWRkcmVzcwUAAAAJaXNzdWVkQW10CQACWQAAAAEIBQAAAAtpc3N1ZVJlc3VsdAAAAAJfMgAAAAD6VLQ1", "height": 2216053, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BzXWarECBYs1NCph8KisejKPTWzexSq1q6mRZLGzb2CM Next: none Diff:
OldNewDifferences
3939 }
4040
4141
42-@Verifier(i)
43-func verify () = {
44- let idx = valueOrElse(getInteger(this, "next_free_idx"), 1)
45- if (((idx % 2) == 0))
46- then sigVerify_32Kb(i.bodyBytes, i.proofs[1], i.senderPublicKey)
47- else false
48- }
49-
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let MULT8 = 100000000
55
66 let MULT4 = 10000
77
88 @Callable(i)
99 func issue () = {
1010 let idx = valueOrElse(getInteger(this, "next_free_idx"), 1)
1111 let userAddress = i.caller
1212 let pmts = i.payments
1313 let pmt = pmts[0]
1414 let pmtAssetId = pmt.assetId
1515 let pmtAmt = pmt.amount
1616 if ((size(pmts) != 1))
1717 then throw("only 1 pmt is allowed")
1818 else if ((pmtAmt != ((15 * MULT8) / 10)))
1919 then throw("exact 1.5 WAVES is allowed")
2020 else if ((pmtAssetId != unit))
2121 then throw("only WAVES is allowed")
2222 else if (isDefined(getBoolean(this, toString(userAddress))))
2323 then throw("address has been already registered")
2424 else {
2525 let issuedAmt = ((1000 * MULT4) / idx)
2626 let assetIdStr58 = valueOrElse(getString(this, "asset_id"), "")
2727 let issueResult = if ((assetIdStr58 == ""))
2828 then {
2929 let issueAct = Issue("ArtMurSergMor", "test token", issuedAmt, 4, true)
3030 let assetId = calculateAssetId(issueAct)
3131 $Tuple2([issueAct], toBase58String(assetId))
3232 }
3333 else {
3434 let reissueAct = Reissue(fromBase58String(assetIdStr58), issuedAmt, true)
3535 $Tuple2([reissueAct], assetIdStr58)
3636 }
3737 (([IntegerEntry("next_free_idx", (idx + 1)), BooleanEntry(toString(userAddress), true), StringEntry("asset_id", issueResult._2)] ++ issueResult._1) :+ ScriptTransfer(userAddress, issuedAmt, fromBase58String(issueResult._2)))
3838 }
3939 }
4040
4141
42-@Verifier(i)
43-func verify () = {
44- let idx = valueOrElse(getInteger(this, "next_free_idx"), 1)
45- if (((idx % 2) == 0))
46- then sigVerify_32Kb(i.bodyBytes, i.proofs[1], i.senderPublicKey)
47- else false
48- }
49-

github/deemru/w8io/169f3d6 
22.55 ms