tx · 6zFbgQKvGkpfPrc426eciXP5KjmpfkydfPu9YGa374iQ

3NAgDPRKu4nLeJ3i3xC8DSZZqwT5CKf8PGQ:  -0.01400000 Waves

2020.11.19 16:22 [1272277] smart account 3NAgDPRKu4nLeJ3i3xC8DSZZqwT5CKf8PGQ > SELF 0.00000000 Waves

{ "type": 13, "id": "6zFbgQKvGkpfPrc426eciXP5KjmpfkydfPu9YGa374iQ", "fee": 1400000, "feeAssetId": null, "timestamp": 1605792200491, "version": 2, "chainId": 84, "sender": "3NAgDPRKu4nLeJ3i3xC8DSZZqwT5CKf8PGQ", "senderPublicKey": "5Vh9W9uREKoRpCAFBf3i6pb52MLDfj6gWRwNNpKcKuFa", "proofs": [ "4MhjcB33E1PBjSaf5bYGeA5KfW9xEozRfZuvdYmeRVojstza4jSWB5rn5gxiNwLhLGfYq5dKa45Z3ksHaBXTnd3V" ], "script": "base64:AAIEAAAAAAAAAAcIAhIDCgEIAAAABgAAAAAGVk9URVJTAAAAAAAAAAADAAAAAAZWT1RJTkcCAAAABlZPVElORwAAAAAGUkVWRUFMAgAAAAZSRVZFQUwBAAAAD2dldENvbW1pdHNDb3VudAAAAAAEAAAABWNvdW50CQAEGgAAAAIFAAAABHRoaXMCAAAADWNvbW1pdHNfY291bnQEAAAAByRtYXRjaDAFAAAABWNvdW50AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAABWNvdW50BQAAAAckbWF0Y2gwBQAAAAVjb3VudAAAAAAAAAAAAAEAAAAPZ2V0Vm90aW5nU3RhdHVzAAAAAAQAAAAGc3RhdHVzCQAEHQAAAAIFAAAABHRoaXMCAAAADXZvdGluZ19zdGF0dXMEAAAAByRtYXRjaDAFAAAABnN0YXR1cwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAZzdGF0dXMFAAAAByRtYXRjaDAFAAAABnN0YXR1cwUAAAAGVk9USU5HAQAAAAp2b3RlRXhpc3RzAAAAAQAAAAdhZGRyZXNzCQEAAAAJaXNEZWZpbmVkAAAAAQkABB0AAAACBQAAAAR0aGlzCQABLAAAAAICAAAAB2NvbW1pdF8FAAAAB2FkZHJlc3MAAAABAAAAAWkBAAAABmNvbW1pdAAAAAEAAAAEaGFzaAQAAAAEdXNlcgkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAAxjb21taXRzQ291bnQJAQAAAA9nZXRDb21taXRzQ291bnQAAAAABAAAAApuZXh0U3RhdHVzAwkAAAAAAAACCQAAZAAAAAIFAAAADGNvbW1pdHNDb3VudAAAAAAAAAAAAQUAAAAGVk9URVJTBQAAAAZSRVZFQUwFAAAABlZPVElORwMJAAAAAAAAAgUAAAAMY29tbWl0c0NvdW50BQAAAAZWT1RFUlMJAAACAAAAAQIAAAAcTWF4IG51bWJlciBvZiB2b3RlcnMgcmVhY2hlZAMJAQAAAAEhAAAAAQkBAAAACnZvdGVFeGlzdHMAAAABBQAAAAR1c2VyCQAAAgAAAAECAAAAElVzZXIgYWxyZWFkeSB2b3RlZAMJAQAAAAIhPQAAAAIJAQAAAA9nZXRWb3RpbmdTdGF0dXMAAAAABQAAAAZWT1RJTkcJAAACAAAAAQIAAAASVm90aW5nIGlzIGRpc2FibGVkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgIAAAAHY29tbWl0XwUAAAAEdXNlcgUAAAAEaGFzaAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAANY29tbWl0c19jb3VudAkAAGQAAAACBQAAAAxjb21taXRzQ291bnQAAAAAAAAAAAEJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAANdm90aW5nX3N0YXR1cwUAAAAKbmV4dFN0YXR1cwUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAY6UKmL", "height": 1272277, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: DmDbGFEcV1c4NrnEhfs2uxx7iK66mTwGqrUANsT6iGHR Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 4 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let VOTERS = 3
5+
6+let VOTING = "VOTING"
7+
8+let REVEAL = "REVEAL"
9+
10+func getCommitsCount () = {
11+ let count = getInteger(this, "commits_count")
12+ match count {
13+ case count: Int =>
14+ count
15+ case _ =>
16+ 0
17+ }
18+ }
19+
20+
21+func getVotingStatus () = {
22+ let status = getString(this, "voting_status")
23+ match status {
24+ case status: String =>
25+ status
26+ case _ =>
27+ VOTING
28+ }
29+ }
30+
31+
32+func voteExists (address) = isDefined(getString(this, ("commit_" + address)))
33+
34+
35+@Callable(i)
36+func commit (hash) = {
37+ let user = toBase58String(i.caller.bytes)
38+ let commitsCount = getCommitsCount()
39+ let nextStatus = if (((commitsCount + 1) == VOTERS))
40+ then REVEAL
41+ else VOTING
42+ if ((commitsCount == VOTERS))
43+ then throw("Max number of voters reached")
44+ else if (!(voteExists(user)))
45+ then throw("User already voted")
46+ else if ((getVotingStatus() != VOTING))
47+ then throw("Voting is disabled")
48+ else [StringEntry(("commit_" + user), hash), IntegerEntry("commits_count", (commitsCount + 1)), StringEntry("voting_status", nextStatus)]
49+ }
50+
51+
52+@Verifier(tx)
53+func verify () = true
54+

github/deemru/w8io/169f3d6 
16.37 ms