tx · C6Ttapb2W6oaahnsFCio5QJ88TCJx8rFuspobGXYePQf

3Mz6zqqBMkE7DWq2qYjoc75jqXr4rADunfv:  -0.01400000 Waves

2021.03.16 18:56 [1440480] smart account 3Mz6zqqBMkE7DWq2qYjoc75jqXr4rADunfv > SELF 0.00000000 Waves

{ "type": 13, "id": "C6Ttapb2W6oaahnsFCio5QJ88TCJx8rFuspobGXYePQf", "fee": 1400000, "feeAssetId": null, "timestamp": 1615910241337, "version": 2, "chainId": 84, "sender": "3Mz6zqqBMkE7DWq2qYjoc75jqXr4rADunfv", "senderPublicKey": "2vP8gqLvBxSiqzeDLEs1FTiL4V79GvhVT64PXEtTewFH", "proofs": [ "3LMntLtfY7Vp8XPvY28rTonv1eGvFFfZuWaxTefVuB251rijFFRXnp3Qa2RHQ4JESThiiXNoLHRBuc5DG5y7evui" ], "script": "base64:AAIEAAAAAAAAABAIAhIFCgMIAQgSAwoBCBIAAAAADQAAAAAETk9ORQIAAAAEbm9uZQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABAAAAA2tleQQAAAADbnVtBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABQAAAANudW0BAAAAC2dldFN0ckJ5S2V5AAAAAQAAAANrZXkEAAAAA3N0cgQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQUAAAAETk9ORQUAAAADc3RyAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABAAAABGl0ZW0JAAEsAAAAAgUAAAAEaXRlbQIAAAAGX3ByaWNlAQAAABFnZXRWYWx1ZUl0ZW1QcmljZQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAD2dldEtleUl0ZW1QcmljZQAAAAEFAAAABGl0ZW0BAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAARpdGVtAgAAAAFfBQAAAAR1c2VyAgAAAARfY250AQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgUAAAAEdXNlcgUAAAAEaXRlbQEAAAAKZ2V0S2V5SXRlbQAAAAIAAAAIc3VwcGxpZXIAAAAFdGl0bGUJAAEsAAAAAgIAAAAFaXRlbV8JAAJYAAAAAQkAAfcAAAABCQABmwAAAAEJAAEsAAAAAgUAAAAIc3VwcGxpZXIFAAAABXRpdGxlAQAAAA5nZXRLZXlJdGVtRGF0YQAAAAEAAAAEaXRlbQkAASwAAAACBQAAAARpdGVtAgAAAAVfZGF0YQEAAAASZ2V0S2V5SXRlbVN1cHBsaWVyAAAAAQAAAARpdGVtCQABLAAAAAIFAAAABGl0ZW0CAAAABl9vd25lcgEAAAAUZ2V0VmFsdWVJdGVtU3VwcGxpZXIAAAABAAAABGl0ZW0JAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABJnZXRLZXlJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtAQAAABxnZXRLZXlCYWxhbmNlU3VwcGxpZXJBY2NvdW50AAAAAQAAAAdhY2NvdW50CQABLAAAAAIFAAAAB2FjY291bnQCAAAACF9iYWxhbmNlAQAAABdnZXRWYWx1ZUJhbGFuY2VTdXBwbGllcgAAAAEAAAAHYWNjb3VudAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAHGdldEtleUJhbGFuY2VTdXBwbGllckFjY291bnQAAAABBQAAAAdhY2NvdW50AAAAAwAAAAFpAQAAAAdhZGRJdGVtAAAAAwAAAAV0aXRsZQAAAAVwcmljZQAAAARkYXRhBAAAAA9zdXBwbGllckFkZHJlc3MJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAAEaXRlbQkBAAAACmdldEtleUl0ZW0AAAACBQAAAA9zdXBwbGllckFkZHJlc3MFAAAABXRpdGxlAwkAAGcAAAACAAAAAAAAAAAABQAAAAVwcmljZQkAAAIAAAABAgAAABFQcmljZSBzZXQgdG9vIGxvdwMJAQAAAAIhPQAAAAIJAQAAABRnZXRWYWx1ZUl0ZW1TdXBwbGllcgAAAAEFAAAABGl0ZW0FAAAABE5PTkUJAAACAAAAAQIAAAAPQWxyZWFkeSBleGlzdCAhCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABJnZXRLZXlJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtBQAAAA9zdXBwbGllckFkZHJlc3MJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABBQAAAARpdGVtBQAAAAVwcmljZQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAOZ2V0S2V5SXRlbURhdGEAAAABBQAAAARpdGVtBQAAAARkYXRhBQAAAANuaWwAAAABaQEAAAAIcHVyY2hhc2UAAAABAAAABGl0ZW0EAAAAA3BtdAkBAAAABXZhbHVlAAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAAAkT25seSBXYXZlcyBjYW4gYmUgdXNlZCBhdCB0aGUgbW9tZW50BAAAAAt1c2VyQWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAAVwcmljZQkBAAAAEWdldFZhbHVlSXRlbVByaWNlAAAAAQUAAAAEaXRlbQQAAAAPc3VwcGxpZXJBZGRyZXNzCQEAAAAUZ2V0VmFsdWVJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtAwkAAGYAAAACBQAAAAVwcmljZQgFAAAAA3BtdAAAAAZhbW91bnQJAAACAAAAAQIAAAAmQ2FuJ3QgdmFsaWRhdGUgcGF5bWVudCwgdG9vIGxvdyBhbW91bnQDCQAAAAAAAAIFAAAAD3N1cHBsaWVyQWRkcmVzcwUAAAAETk9ORQkAAAIAAAABAgAAABdTdXBwbGllciBkb2VzIG5vdCBleGlzdAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtCQAAZAAAAAIJAQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtAAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAcZ2V0S2V5QmFsYW5jZVN1cHBsaWVyQWNjb3VudAAAAAEFAAAAD3N1cHBsaWVyQWRkcmVzcwkAAGQAAAACCQEAAAAXZ2V0VmFsdWVCYWxhbmNlU3VwcGxpZXIAAAABBQAAAA9zdXBwbGllckFkZHJlc3MIBQAAAANwbXQAAAAGYW1vdW50BQAAAANuaWwAAAABaQEAAAAId2l0aGRyYXcAAAAABAAAAANhZHIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAAKY3VyQmFsYW5jZQkBAAAAF2dldFZhbHVlQmFsYW5jZVN1cHBsaWVyAAAAAQUAAAADYWRyAwkAAGcAAAACAAAAAAAAAAAABQAAAApjdXJCYWxhbmNlCQAAAgAAAAECAAAAGU5vIGJhbGFuY2UgZm9yIHRoZSBtb21lbnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABxnZXRLZXlCYWxhbmNlU3VwcGxpZXJBY2NvdW50AAAAAQUAAAADYWRyAAAAAAAAAAAACQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAAA2FkcgUAAAAKY3VyQmFsYW5jZQUAAAAEdW5pdAUAAAADbmlsAAAAALHrXiE=", "height": 1440480, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EYmsKAbmz6JZhPxGEGMg5cCf15cRQDN7gKA4UjfMfx31 Next: APbzzM5VjNWLiMHwvRkmAECYLHYTchpUGXQNjnCiz9kK Diff:
OldNewDifferences
9292 }
9393
9494
95+
96+@Callable(x)
97+func withdraw () = {
98+ let D = toBase58String(x.caller.bytes)
99+ let E = w(D)
100+ if ((0 >= E))
101+ then throw("No balance for the moment")
102+ else [IntegerEntry(u(D), 0), ScriptTransfer(addressFromStringValue(D), E, unit)]
103+ }
104+
105+
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
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("Price set too low")
7070 else if ((t(j) != a))
7171 then throw("Already exist !")
7272 else [StringEntry(s(j), A), IntegerEntry(i(j), y), StringEntry(r(j), z)]
7373 }
7474
7575
7676
7777 @Callable(x)
7878 func purchase (j) = {
7979 let B = value(x.payments[0])
8080 if (isDefined(B.assetId))
8181 then throw("Only Waves can be used at the moment")
8282 else {
8383 let C = toBase58String(x.caller.bytes)
8484 let y = k(j)
8585 let A = t(j)
8686 if ((y > B.amount))
8787 then throw("Can't validate payment, too low amount")
8888 else if ((A == a))
8989 then throw("Supplier does not exist")
9090 else [IntegerEntry(l(C, j), (n(C, j) + 1)), IntegerEntry(u(A), (w(A) + B.amount))]
9191 }
9292 }
9393
9494
95+
96+@Callable(x)
97+func withdraw () = {
98+ let D = toBase58String(x.caller.bytes)
99+ let E = w(D)
100+ if ((0 >= E))
101+ then throw("No balance for the moment")
102+ else [IntegerEntry(u(D), 0), ScriptTransfer(addressFromStringValue(D), E, unit)]
103+ }
104+
105+

github/deemru/w8io/873ac7e 
23.09 ms