tx · GSu4AWh6ycEmBkdy8zSfR3etsZqfhXS5g2aCxvawAETh

3MxJx6npysQdoyyxLsCCb3Yg8fTeH3gEQQd:  -0.01000000 Waves

2023.12.04 01:47 [2871076] smart account 3MxJx6npysQdoyyxLsCCb3Yg8fTeH3gEQQd > SELF 0.00000000 Waves

{ "type": 13, "id": "GSu4AWh6ycEmBkdy8zSfR3etsZqfhXS5g2aCxvawAETh", "fee": 1000000, "feeAssetId": null, "timestamp": 1701643636913, "version": 2, "chainId": 84, "sender": "3MxJx6npysQdoyyxLsCCb3Yg8fTeH3gEQQd", "senderPublicKey": "EEhsp9Jd5MwVmYJMGAZJL3tTb5KcurTz8Aw7wksZuw3e", "proofs": [ "2vFyYG1orKWrHC3xHZJLjFD9KtSGoTJxJNRF2gVWXm1zFoTtE2Z2fqx5b47FjPsrVBa38REuzkkwi55fpFtwNJmW" ], "script": "base64:AAIDAAAAAAAAAAcIARIDCgEIAAAAAAAAAAEAAAABaQEAAAAIcHVyY2hhc2UAAAABAAAABGl0ZW0EAAAAA3BtdAkBAAAAB2V4dHJhY3QAAAABCAUAAAABaQAAAAdwYXltZW50AwkBAAAACWlzRGVmaW5lZAAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAkAAAIAAAABAgAAACBjYW4gdXNlIFdBVkVTIG9ubHkgYXQgdGhlIG1vbWVudAQAAAAPY3VzdG9tZXJBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAABXByaWNlBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACAgAAAAVpdGVtXwUAAAAEaXRlbQIAAAANX2NvdXBvbl9wcmljZQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAAAwkAAGYAAAACBQAAAAVwcmljZQgFAAAAA3BtdAAAAAZhbW91bnQJAAACAAAAAQIAAAAucHVyY2hhc2UgYW1vdW50IGNhbm5vdCBiZSBsZXNzIHRoYW4gaXRlbSBwcmljZQMJAABmAAAAAggFAAAAA3BtdAAAAAZhbW91bnQFAAAABXByaWNlCQAAAgAAAAECAAAAMHB1cmNoYXNlIGFtb3VudCBjYW5ub3QgYmUgaGlnaGVyIHRoYW4gaXRlbSBwcmljZQkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAVc3RhdHVzOnB1cmNoYXNlX2l0ZW1fBQAAAARpdGVtAgAAAApfY3VzdG9tZXJfBQAAAA9jdXN0b21lckFkZHJlc3MCAAAACWNvbmZpcm1lZAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAUcHJpY2U6cHVyY2hhc2VfaXRlbV8FAAAABGl0ZW0CAAAACl9jdXN0b21lcl8FAAAAD2N1c3RvbWVyQWRkcmVzcwUAAAAFcHJpY2UFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAByRtYXRjaDAFAAAAAnR4AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABRTZXRTY3JpcHRUcmFuc2FjdGlvbgQAAAABZAUAAAAHJG1hdGNoMAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0RhdGFUcmFuc2FjdGlvbgQAAAABZAUAAAAHJG1hdGNoMAYDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAE1RyYW5zZmVyVHJhbnNhY3Rpb24EAAAAAWQFAAAAByRtYXRjaDAGAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABdJbnZva2VTY3JpcHRUcmFuc2FjdGlvbgQAAAABZAUAAAAHJG1hdGNoMAYHn95uMA==", "height": 2871076, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Af5JgqvPxpTq4kFasVhPmeWSDvJdshakYPTub2Epugrf Next: DqHHY8vEMm5fcSW3AjGtfdWv6BG6ewmxNwp7F6Gaq7Kx Diff:
OldNewDifferences
44
55
66 @Callable(a)
7-func purchase () = {
8- let b = extract(a.payment)
9- if (isDefined(b.assetId))
7+func purchase (b) = {
8+ let c = extract(a.payment)
9+ if (isDefined(c.assetId))
1010 then throw("can use WAVES only at the moment")
1111 else {
12- let c = toBase58String(a.caller.bytes)
13- let d = {
14- let e = getInteger(this, "item_A_coupon_price")
15- if ($isInstanceOf(e, "Int"))
12+ let d = toBase58String(a.caller.bytes)
13+ let e = {
14+ let f = getInteger(this, (("item_" + b) + "_coupon_price"))
15+ if ($isInstanceOf(f, "Int"))
1616 then {
17- let f = e
18- f
17+ let g = f
18+ g
1919 }
2020 else 0
2121 }
22- if ((d > b.amount))
22+ if ((e > c.amount))
2323 then throw("purchase amount cannot be less than item price")
24- else if ((b.amount > d))
24+ else if ((c.amount > e))
2525 then throw("purchase amount cannot be higher than item price")
26- else WriteSet([DataEntry(("status:purchase_item_A_customer_" + c), "confirmed"), DataEntry(("price:purchase_item_A_customer_" + c), d)])
26+ else WriteSet([DataEntry(((("status:purchase_item_" + b) + "_customer_") + d), "confirmed"), DataEntry(((("price:purchase_item_" + b) + "_customer_") + d), e)])
2727 }
2828 }
2929
3030
31-@Verifier(g)
32-func h () = {
33- let e = g
34- if ($isInstanceOf(e, "SetScriptTransaction"))
31+@Verifier(h)
32+func i () = {
33+ let f = h
34+ if ($isInstanceOf(f, "SetScriptTransaction"))
3535 then {
36- let i = e
37- sigVerify(g.bodyBytes, g.proofs[0], g.senderPublicKey)
36+ let j = f
37+ sigVerify(h.bodyBytes, h.proofs[0], h.senderPublicKey)
3838 }
39- else if ($isInstanceOf(e, "DataTransaction"))
39+ else if ($isInstanceOf(f, "DataTransaction"))
4040 then {
41- let i = e
41+ let j = f
4242 true
4343 }
44- else if ($isInstanceOf(e, "TransferTransaction"))
44+ else if ($isInstanceOf(f, "TransferTransaction"))
4545 then {
46- let i = e
46+ let j = f
4747 true
4848 }
49- else if ($isInstanceOf(e, "InvokeScriptTransaction"))
49+ else if ($isInstanceOf(f, "InvokeScriptTransaction"))
5050 then {
51- let i = e
51+ let j = f
5252 true
5353 }
5454 else false
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(a)
7-func purchase () = {
8- let b = extract(a.payment)
9- if (isDefined(b.assetId))
7+func purchase (b) = {
8+ let c = extract(a.payment)
9+ if (isDefined(c.assetId))
1010 then throw("can use WAVES only at the moment")
1111 else {
12- let c = toBase58String(a.caller.bytes)
13- let d = {
14- let e = getInteger(this, "item_A_coupon_price")
15- if ($isInstanceOf(e, "Int"))
12+ let d = toBase58String(a.caller.bytes)
13+ let e = {
14+ let f = getInteger(this, (("item_" + b) + "_coupon_price"))
15+ if ($isInstanceOf(f, "Int"))
1616 then {
17- let f = e
18- f
17+ let g = f
18+ g
1919 }
2020 else 0
2121 }
22- if ((d > b.amount))
22+ if ((e > c.amount))
2323 then throw("purchase amount cannot be less than item price")
24- else if ((b.amount > d))
24+ else if ((c.amount > e))
2525 then throw("purchase amount cannot be higher than item price")
26- else WriteSet([DataEntry(("status:purchase_item_A_customer_" + c), "confirmed"), DataEntry(("price:purchase_item_A_customer_" + c), d)])
26+ else WriteSet([DataEntry(((("status:purchase_item_" + b) + "_customer_") + d), "confirmed"), DataEntry(((("price:purchase_item_" + b) + "_customer_") + d), e)])
2727 }
2828 }
2929
3030
31-@Verifier(g)
32-func h () = {
33- let e = g
34- if ($isInstanceOf(e, "SetScriptTransaction"))
31+@Verifier(h)
32+func i () = {
33+ let f = h
34+ if ($isInstanceOf(f, "SetScriptTransaction"))
3535 then {
36- let i = e
37- sigVerify(g.bodyBytes, g.proofs[0], g.senderPublicKey)
36+ let j = f
37+ sigVerify(h.bodyBytes, h.proofs[0], h.senderPublicKey)
3838 }
39- else if ($isInstanceOf(e, "DataTransaction"))
39+ else if ($isInstanceOf(f, "DataTransaction"))
4040 then {
41- let i = e
41+ let j = f
4242 true
4343 }
44- else if ($isInstanceOf(e, "TransferTransaction"))
44+ else if ($isInstanceOf(f, "TransferTransaction"))
4545 then {
46- let i = e
46+ let j = f
4747 true
4848 }
49- else if ($isInstanceOf(e, "InvokeScriptTransaction"))
49+ else if ($isInstanceOf(f, "InvokeScriptTransaction"))
5050 then {
51- let i = e
51+ let j = f
5252 true
5353 }
5454 else false
5555 }
5656

github/deemru/w8io/169f3d6 
39.35 ms