tx · 6fEApCkVQ7xwQkkLrB1SuvQDC6DfsZFLsKgr6YUmKVX8

3Mp3rjstd81a5fxytAqYkpcE5cvT5ixWiG1:  -0.01400000 Waves

2019.08.22 07:50 [641848] smart account 3Mp3rjstd81a5fxytAqYkpcE5cvT5ixWiG1 > SELF 0.00000000 Waves

{ "type": 13, "id": "6fEApCkVQ7xwQkkLrB1SuvQDC6DfsZFLsKgr6YUmKVX8", "fee": 1400000, "feeAssetId": null, "timestamp": 1566449120007, "version": 1, "sender": "3Mp3rjstd81a5fxytAqYkpcE5cvT5ixWiG1", "senderPublicKey": "EvWE7yop4Mk9nior5bdHfnPCaipLA8rLK4d9VKdecDXR", "proofs": [ "3cDa1YdynTMQ9Ptau1mFCZFjMDV1ALUaK6qAYvzjEqDhm1tunE2S6HGacGMghjdibtY5tGAAr67fMLejMj7jEJ6U" ], "script": "base64:AAIDAAAAAAAAAAAAAAABAQAAABR2b3RlcklzQWxsb3dlZFRvVm90ZQAAAAEAAAAOdm90ZXJQdWJsaWNLZXkEAAAADWFsZWtzZWlQdWJLZXkBAAAAILygSgO/tG4xLiEleiogrcSlL+UsJI9RvELkQWiTgw5nBAAAAAphbm5hUHViS2V5AQAAACDrVhrJej966L7Vzv+lxOeGMnrr3AsUZhXgIl7GaoMHSQMDCQEAAAACIT0AAAACBQAAAA52b3RlclB1YmxpY0tleQUAAAANYWxla3NlaVB1YktleQkBAAAAAiE9AAAAAgUAAAAOdm90ZXJQdWJsaWNLZXkFAAAACmFubmFQdWJLZXkHBwYAAAABAAAAAWkBAAAABHZvdGUAAAABAAAAB3RoZVZvdGUDCQEAAAABIQAAAAEJAQAAABR2b3RlcklzQWxsb3dlZFRvVm90ZQAAAAEIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQkAAAIAAAABAgAAADtZb3UgY2FuIG5vdCB2b3RlIGJlY2F1c2UgeW91IGFyZSBub3QgaW4gdGhlIGxpc3Qgb2Ygdm90ZXJzIQQAAAAPZGF0YUZyb21TdG9yYWdlCQAEGgAAAAIFAAAABHRoaXMJAAJYAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5AwkBAAAACWlzRGVmaW5lZAAAAAEFAAAAD2RhdGFGcm9tU3RvcmFnZQkAAAIAAAABAgAAAD5Zb3UgaGF2ZSBhbHJlYWR5IHZvdGVkISBWb3RpbmcgdGhlIHNlY29uZCB0aW1lIGlzIG5vdCBhbGxvd2VkLgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAAlgAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkFAAAAB3RoZVZvdGUFAAAAA25pbAAAAAD//Ynn", "chainId": 84, "height": 641848, "spentComplexity": 0 } View: original | compacted Prev: GnbFnd1wp59XVdmzhAcvw8R76HYPvDXjRXxMUmvh4hUV Next: HW5jKVLVvaCYnZ7PXuSG3HnFDaGQzjHhnbhLz6Txeyyb Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-
5-
6-@Callable(a)
7-func deposit () = {
8- let b = extract(a.payment)
9- if (isDefined(b.assetId))
10- then throw("can hold waves only at the moment")
11- else {
12- let c = toBase58String(a.caller.bytes)
13- let d = {
14- let e = getInteger(this, c)
15- if ($isInstanceOf(e, "Int"))
16- then {
17- let f = e
18- f
19- }
20- else 0
21- }
22- let g = (d + b.amount)
23- WriteSet([DataEntry(c, g)])
24- }
4+func a (b) = {
5+ let c = base58'DhKQeU3bRjNVDYtQoQ6Xg2Hfnq7iZgLjjt7KH9NHahVg'
6+ let d = base58'Gqexhd3H6RDBFQY9GcQdEPkxjzkiT9bAvrHXqJzJTaCg'
7+ if (if ((b != c))
8+ then (b != d)
9+ else false)
10+ then false
11+ else true
2512 }
2613
2714
15+@Callable(e)
16+func vote (f) = if (!(a(e.callerPublicKey)))
17+ then throw("You can not vote because you are not in the list of voters!")
18+ else {
19+ let g = getInteger(this, toBase58String(e.callerPublicKey))
20+ if (isDefined(g))
21+ then throw("You have already voted! Voting the second time is not allowed.")
22+ else WriteSet([DataEntry(toBase58String(e.callerPublicKey), f)])
23+ }
2824
29-@Callable(a)
30-func withdraw (h) = {
31- let c = toBase58String(a.caller.bytes)
32- let d = {
33- let e = getInteger(this, c)
34- if ($isInstanceOf(e, "Int"))
35- then {
36- let f = e
37- f
38- }
39- else 0
40- }
41- let g = (d - h)
42- if ((0 > h))
43- then throw("Can't withdraw negative amount")
44- else if ((0 > g))
45- then throw("Not enough balance")
46- else ScriptResult(WriteSet([DataEntry(c, g)]), TransferSet([ScriptTransfer(a.caller, h, unit)]))
47- }
48-
49-
50-@Verifier(i)
51-func j () = sigVerify(i.bodyBytes, i.proofs[0], i.senderPublicKey)
5225

github/deemru/w8io/169f3d6 
22.50 ms