tx · EHVLtGp9TM6QhaC2Rgv3XYvDb8rb4XgKFR6ixCSnviHx

3MuPe52GsMZN8tduGQ3jgoUBsJK1zAhjaqm:  -0.01000000 Waves

2022.03.17 09:12 [1967564] smart account 3MuPe52GsMZN8tduGQ3jgoUBsJK1zAhjaqm > SELF 0.00000000 Waves

{ "type": 13, "id": "EHVLtGp9TM6QhaC2Rgv3XYvDb8rb4XgKFR6ixCSnviHx", "fee": 1000000, "feeAssetId": null, "timestamp": 1647497531583, "version": 2, "chainId": 84, "sender": "3MuPe52GsMZN8tduGQ3jgoUBsJK1zAhjaqm", "senderPublicKey": "DKZcYM5WoZ3gBkiAgjzXdfQaZcfisgn2Zn4B226GHMcD", "proofs": [ "2CJMAQP1ukv2FdEbYQ8oqthBf4sMgzQSTNb3iuUTVUZGSPKCQqBG3Gg8jSPrB7sXXm6AAj6LWwLBRfknc3wzZjSn" ], "script": "base64:AAIFAAAAAAAAAA4IAhIFCgMIAQgSAwoBCAAAAA0AAAAABE5PTkUCAAAABG5vbmUBAAAADmdldE51bWJlckJ5S2V5AAAAAQAAAANrZXkEAAAAA251bQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAUAAAADbnVtAQAAAAtnZXRTdHJCeUtleQAAAAEAAAADa2V5BAAAAANzdHIEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEFAAAABE5PTkUFAAAAA3N0cgEAAAAPZ2V0S2V5SXRlbVByaWNlAAAAAQAAAARpdGVtCQABLAAAAAIFAAAABGl0ZW0CAAAABl9wcmljZQEAAAARZ2V0VmFsdWVJdGVtUHJpY2UAAAABAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABBQAAAARpdGVtAQAAABVnZXRLZXlVc2VySXRlbUNvdW50ZXIAAAACAAAABHVzZXIAAAAEaXRlbQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAEaXRlbQIAAAABXwUAAAAEdXNlcgIAAAAEX2NudAEAAAAXZ2V0VmFsdWVVc2VySXRlbUNvdW50ZXIAAAACAAAABHVzZXIAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIFAAAABHVzZXIFAAAABGl0ZW0BAAAACmdldEtleUl0ZW0AAAACAAAACHN1cHBsaWVyAAAABXRpdGxlCQABLAAAAAICAAAABWl0ZW1fCQACWAAAAAEJAAH3AAAAAQkAAZsAAAABCQABLAAAAAIFAAAACHN1cHBsaWVyBQAAAAV0aXRsZQEAAAAOZ2V0S2V5SXRlbURhdGEAAAABAAAABGl0ZW0JAAEsAAAAAgUAAAAEaXRlbQIAAAAFX2RhdGEBAAAAEmdldEtleUl0ZW1TdXBwbGllcgAAAAEAAAAEaXRlbQkAASwAAAACBQAAAARpdGVtAgAAAAZfb3duZXIBAAAAFGdldFZhbHVlSXRlbVN1cHBsaWVyAAAAAQAAAARpdGVtCQEAAAALZ2V0U3RyQnlLZXkAAAABCQEAAAASZ2V0S2V5SXRlbVN1cHBsaWVyAAAAAQUAAAAEaXRlbQEAAAAVZ2V0S2V5QmFsYW5jZVN1cHBsaWVyAAAAAQAAAAdhY2NvdW50CQABLAAAAAIFAAAAB2FjY291bnQCAAAACF9iYWxhbmNlAQAAABdnZXRWYWx1ZUJhbGFuY2VTdXBwbGllcgAAAAEAAAAHYWNjb3VudAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAFWdldEtleUJhbGFuY2VTdXBwbGllcgAAAAEFAAAAB2FjY291bnQAAAACAAAAAWkBAAAAB2FkZEl0ZW0AAAADAAAABXRpdGxlAAAABXByaWNlAAAABGRhdGEEAAAAD3N1cHBsaWVyQWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAARpdGVtCQEAAAAKZ2V0S2V5SXRlbQAAAAIFAAAAD3N1cHBsaWVyQWRkcmVzcwUAAAAFdGl0bGUDCQAAZwAAAAIAAAAAAAAAAAAFAAAABXByaWNlCQAAAgAAAAECAAAALnB1cmNoYXNlIGFtb3VudCBjYW5ub3QgYmUgbGVzcyB0aGFuIGl0ZW0gcHJpY2UDCQEAAAACIT0AAAACCQEAAAAUZ2V0VmFsdWVJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtBQAAAAROT05FCQAAAgAAAAECAAAAGGFuIGl0ZW0gaXMgYWxyZWFkeSBleGlzdAkABRQAAAACCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABJnZXRLZXlJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtBQAAAA9zdXBwbGllckFkZHJlc3MJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABBQAAAARpdGVtBQAAAAVwcmljZQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAOZ2V0S2V5SXRlbURhdGEAAAABBQAAAARpdGVtBQAAAARkYXRhBQAAAANuaWwFAAAABHVuaXQAAAABaQEAAAAIcHVyY2hhc2UAAAABAAAABGl0ZW0EAAAAA3BtdAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAAAgY2FuIHVzZSBXQVZFUyBvbmx5IGF0IHRoZSBtb21lbnQEAAAAC3VzZXJBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAABXByaWNlCQEAAAARZ2V0VmFsdWVJdGVtUHJpY2UAAAABBQAAAARpdGVtBAAAAA9zdXBwbGllckFkZHJlc3MJAQAAABRnZXRWYWx1ZUl0ZW1TdXBwbGllcgAAAAEFAAAABGl0ZW0DCQAAZgAAAAIFAAAABXByaWNlCAUAAAADcG10AAAABmFtb3VudAkAAAIAAAABAgAAAC5wdXJjaGFzZSBhbW91bnQgY2Fubm90IGJlIGxlc3MgdGhhbiBpdGVtIHByaWNlAwkAAGYAAAACCAUAAAADcG10AAAABmFtb3VudAUAAAAFcHJpY2UJAAACAAAAAQIAAAAwcHVyY2hhc2UgYW1vdW50IGNhbm5vdCBiZSBoaWdoZXIgdGhhbiBpdGVtIHByaWNlAwkAAAAAAAACBQAAAA9zdXBwbGllckFkZHJlc3MFAAAABE5PTkUJAAACAAAAAQIAAAAXc3VwcGxpZXIgZG9lcyBub3QgZXhpc3QJAAUUAAAAAgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtCQAAZAAAAAIJAQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAVZ2V0S2V5QmFsYW5jZVN1cHBsaWVyAAAAAQUAAAAPc3VwcGxpZXJBZGRyZXNzCQAAZAAAAAIJAQAAABdnZXRWYWx1ZUJhbGFuY2VTdXBwbGllcgAAAAEFAAAAD3N1cHBsaWVyQWRkcmVzcwgFAAAAA3BtdAAAAAZhbW91bnQFAAAAA25pbAUAAAAEdW5pdAAAAAAyL/Z3", "height": 1967564, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FnX4UMjsbX962AT8hbUpmgXe8f6Yfu5PSKr275rTp2ab Next: 4ZzWwsmnqzxLZGDaMS8nqcGk11cwMVzj6G8MfLPANVxn Diff:
OldNewDifferences
7575
7676
7777 @Callable(x)
78-func purchase (B) = {
79- let C = if ((size(x.payments) == 1))
80- then x.payments[0]
81- else throw("Attached payment is required")
82- if (isDefined(C.assetId))
78+func purchase (j) = {
79+ let B = x.payments[0]
80+ if (isDefined(B.assetId))
8381 then throw("can use WAVES only at the moment")
8482 else {
85- let D = toBase58String(x.caller.bytes)
86- let y = {
87- let e = getInteger(this, (("item_" + B) + "_coupon_price"))
88- if ($isInstanceOf(e, "Int"))
89- then {
90- let f = e
91- f
92- }
93- else 0
94- }
95- if ((y > C.amount))
83+ let C = toBase58String(x.caller.bytes)
84+ let y = k(j)
85+ let A = t(j)
86+ if ((y > B.amount))
9687 then throw("purchase amount cannot be less than item price")
97- else if ((C.amount > y))
88+ else if ((B.amount > y))
9889 then throw("purchase amount cannot be higher than item price")
99- else $Tuple2([StringEntry(((("status:purchase_item_" + B) + "_customer_") + D), "confirmed"), IntegerEntry(((("price:purchase_item_" + B) + "_customer_") + D), y)], unit)
90+ else if ((A == a))
91+ then throw("supplier does not exist")
92+ else $Tuple2([IntegerEntry(l(C, j), (n(C, j) + 1)), IntegerEntry(u(A), (w(A) + B.amount))], unit)
10093 }
10194 }
10295
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "none"
55
66 func b (c) = {
77 let d = {
88 let e = getInteger(this, c)
99 if ($isInstanceOf(e, "Int"))
1010 then {
1111 let f = e
1212 f
1313 }
1414 else 0
1515 }
1616 d
1717 }
1818
1919
2020 func g (c) = {
2121 let h = {
2222 let e = getString(this, c)
2323 if ($isInstanceOf(e, "String"))
2424 then {
2525 let f = e
2626 f
2727 }
2828 else a
2929 }
3030 h
3131 }
3232
3333
3434 func i (j) = (j + "_price")
3535
3636
3737 func k (j) = b(i(j))
3838
3939
4040 func l (m,j) = (((j + "_") + m) + "_cnt")
4141
4242
4343 func n (m,j) = b(l(m, j))
4444
4545
4646 func o (p,q) = ("item_" + toBase58String(sha256(toBytes((p + q)))))
4747
4848
4949 func r (j) = (j + "_data")
5050
5151
5252 func s (j) = (j + "_owner")
5353
5454
5555 func t (j) = g(s(j))
5656
5757
5858 func u (v) = (v + "_balance")
5959
6060
6161 func w (v) = b(u(v))
6262
6363
6464 @Callable(x)
6565 func addItem (q,y,z) = {
6666 let A = toBase58String(x.caller.bytes)
6767 let j = o(A, q)
6868 if ((0 >= y))
6969 then throw("purchase amount cannot be less than item price")
7070 else if ((t(j) != a))
7171 then throw("an item is already exist")
7272 else $Tuple2([StringEntry(s(j), A), IntegerEntry(i(j), y), StringEntry(r(j), z)], unit)
7373 }
7474
7575
7676
7777 @Callable(x)
78-func purchase (B) = {
79- let C = if ((size(x.payments) == 1))
80- then x.payments[0]
81- else throw("Attached payment is required")
82- if (isDefined(C.assetId))
78+func purchase (j) = {
79+ let B = x.payments[0]
80+ if (isDefined(B.assetId))
8381 then throw("can use WAVES only at the moment")
8482 else {
85- let D = toBase58String(x.caller.bytes)
86- let y = {
87- let e = getInteger(this, (("item_" + B) + "_coupon_price"))
88- if ($isInstanceOf(e, "Int"))
89- then {
90- let f = e
91- f
92- }
93- else 0
94- }
95- if ((y > C.amount))
83+ let C = toBase58String(x.caller.bytes)
84+ let y = k(j)
85+ let A = t(j)
86+ if ((y > B.amount))
9687 then throw("purchase amount cannot be less than item price")
97- else if ((C.amount > y))
88+ else if ((B.amount > y))
9889 then throw("purchase amount cannot be higher than item price")
99- else $Tuple2([StringEntry(((("status:purchase_item_" + B) + "_customer_") + D), "confirmed"), IntegerEntry(((("price:purchase_item_" + B) + "_customer_") + D), y)], unit)
90+ else if ((A == a))
91+ then throw("supplier does not exist")
92+ else $Tuple2([IntegerEntry(l(C, j), (n(C, j) + 1)), IntegerEntry(u(A), (w(A) + B.amount))], unit)
10093 }
10194 }
10295
10396

github/deemru/w8io/026f985 
30.36 ms