tx · 5vjSZY22TGMSnNT25eu3t2P7kEvXTM5xbrAuF4ys6scc

3Mze7XxHJtXw48uyWhjTJgMLcEzNBmi9tS9:  -0.01400000 Waves

2019.08.02 19:03 [613439] smart account 3Mze7XxHJtXw48uyWhjTJgMLcEzNBmi9tS9 > SELF 0.00000000 Waves

{ "type": 13, "id": "5vjSZY22TGMSnNT25eu3t2P7kEvXTM5xbrAuF4ys6scc", "fee": 1400000, "feeAssetId": null, "timestamp": 1564761810063, "version": 1, "sender": "3Mze7XxHJtXw48uyWhjTJgMLcEzNBmi9tS9", "senderPublicKey": "BZri78A6CXpGPmAHZNwqQXoNfWamwRZiuaBas3VdDKZp", "proofs": [ "4LWTBcJcHKwkvHxN98GFD8cV9AX8rUHtxTqnCnx5ib9jyHThB9CL8CqZU1GwoUzQc1tzQfzXWQkYLxynkUJvuyyi" ], "script": "base64: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ACFBbiBpdGVtIGxpa2UgdGhpcyBhbHJlYWR5IGV4aXN0cy4JAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABJnZXRLZXlJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtBQAAAA9zdXBwbGllckFkZHJlc3MJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABBQAAAARpdGVtBQAAAAVwcmljZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAADmdldEtleUl0ZW1EYXRhAAAAAQUAAAAEaXRlbQUAAAAEZGF0YQUAAAADbmlsAAAAAWkBAAAACHdpdGhkcmF3AAAAAAQAAAAPc3VwcGxpZXJBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAB2JhbGFuY2UJAQAAABdnZXRWYWx1ZUJhbGFuY2VTdXBwbGllcgAAAAEFAAAAD3N1cHBsaWVyQWRkcmVzcwMJAABnAAAAAgAAAAAAAAAAAAUAAAAHYmFsYW5jZQkAAAIAAAABAgAAABRJbnN1ZmZpY2llbnQgQmFsYW5jZQkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABBQAAAA9zdXBwbGllckFkZHJlc3MAAAAAAAAAAAAFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAEFAAAAD3N1cHBsaWVyQWRkcmVzcwUAAAAHYmFsYW5jZQUAAAAEdW5pdAUAAAADbmlsAAAAANWUl5w=", "chainId": 84, "height": 613439, "spentComplexity": 0 } View: original | compacted Prev: 3rCFsQzMyG9iM4rpaZ6P9rR8aKGZxdGxAuVhi1yZNusA Next: 9RN7yAfyy3mkY8sVBbFT1J8mW1qVoiTKRGjXYVQPt7aR Diff:
OldNewDifferences
9494 }
9595
9696
97+
98+@Callable(x)
99+func withdraw () = {
100+ let B = toBase58String(x.caller.bytes)
101+ let D = w(B)
102+ if ((0 >= D))
103+ then throw("Insufficient Balance")
104+ else ScriptResult(WriteSet([DataEntry(u(B), 0)]), TransferSet([ScriptTransfer(addressFromStringValue(B), D, unit)]))
105+ }
106+
107+
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "none"
55
66 func b (c,d) = (((d + "_") + c) + "_cnt")
77
88
99 func e (f,g) = ("item" + toBase58String(sha256(toBytes((f + g)))))
1010
1111
1212 func h (i) = {
1313 let j = {
1414 let k = getInteger(this, i)
1515 if ($isInstanceOf(k, "Int"))
1616 then {
1717 let l = k
1818 l
1919 }
2020 else 0
2121 }
2222 j
2323 }
2424
2525
2626 func m (i) = {
2727 let n = {
2828 let k = getString(this, i)
2929 if ($isInstanceOf(k, "String"))
3030 then {
3131 let l = k
3232 l
3333 }
3434 else a
3535 }
3636 n
3737 }
3838
3939
4040 func o (d) = (d + "_owner")
4141
4242
4343 func p (d) = (d + "_price")
4444
4545
4646 func q (d) = (d + "_data")
4747
4848
4949 func r (d) = m(o(d))
5050
5151
5252 func s (d) = h(p(d))
5353
5454
5555 func t (c,d) = h(p(d))
5656
5757
5858 func u (v) = (v + "_balance")
5959
6060
6161 func w (v) = h(u(v))
6262
6363
6464 @Callable(x)
6565 func purchase (d) = {
6666 let y = extract(x.payment)
6767 if (isDefined(y.assetId))
6868 then throw("Can use only WAVES at the moment.")
6969 else {
7070 let z = drop(toBase58String(x.caller.bytes), 10)
7171 let A = s(d)
7272 let B = r(d)
7373 if ((A > y.amount))
7474 then throw(((("Amount cannot be less than item price. You specified amount: " + toString(y.amount)) + "but price is ") + toString(A)))
7575 else if ((y.amount > A))
7676 then throw(((((("Amount cannot be greater than item price. You specified amount: " + toString(y.amount)) + " but price of item: ") + d) + " is ") + toString(A)))
7777 else if ((B == a))
7878 then throw("Supplier not found.")
7979 else WriteSet([DataEntry(b(z, d), (t(z, d) + 1)), DataEntry(u(B), (w(B) + y.amount))])
8080 }
8181 }
8282
8383
8484
8585 @Callable(x)
8686 func addItem (g,A,C) = {
8787 let B = drop(toBase58String(x.caller.bytes), 10)
8888 let d = e(B, g)
8989 if ((0 >= A))
9090 then throw("Price must be positive.")
9191 else if ((r(d) != a))
9292 then throw("An item like this already exists.")
9393 else WriteSet([DataEntry(o(d), B), DataEntry(p(d), A), DataEntry(q(d), C)])
9494 }
9595
9696
97+
98+@Callable(x)
99+func withdraw () = {
100+ let B = toBase58String(x.caller.bytes)
101+ let D = w(B)
102+ if ((0 >= D))
103+ then throw("Insufficient Balance")
104+ else ScriptResult(WriteSet([DataEntry(u(B), 0)]), TransferSet([ScriptTransfer(addressFromStringValue(B), D, unit)]))
105+ }
106+
107+

github/deemru/w8io/169f3d6 
37.65 ms