tx · 9WTWmrDj3xHekfa78f7sHmGLo7nPf5iyLiRKqVCabkvy

3MriS1yLhFcKRAM51jDyNAdusa6bCWrTCYj:  -0.05000000 Waves

2024.02.07 15:30 [2965821] smart account 3MriS1yLhFcKRAM51jDyNAdusa6bCWrTCYj > SELF 0.00000000 Waves

{ "type": 13, "id": "9WTWmrDj3xHekfa78f7sHmGLo7nPf5iyLiRKqVCabkvy", "fee": 5000000, "feeAssetId": null, "timestamp": 1707309052546, "version": 2, "chainId": 84, "sender": "3MriS1yLhFcKRAM51jDyNAdusa6bCWrTCYj", "senderPublicKey": "CgjXoHPsstPW1WBAcTeBgjKtLSNFmLbQ7pLJ19JzkCy9", "proofs": [ "4MQiEEJs5ioYuLwLPRHK9JG8AYBkT9py7j9gA1eiNBEnUPQhkZPHwodz3ESD64E8B6h65dq9EHVscnhpbEeuEnv7" ], "script": "base64:AAIFAAAAAAAAABgIAhIFCgMICAgSAwoBCBIDCgEIEgMKAQgAAAAGAAAAAA9tYWluREFPQ29udHJhY3QJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAECAAAAIzNOOXRLaXh6cVRZV25FWFF4ckRRNXBCVEd2UWQ2c0Zzdm1WAAAAABV2b3RlSW5pdGlhdGVUaHJlc2hvbGQAAAAAAAX14QABAAAAEmdldFZvdGVzRnJvbUNhbGxlcgAAAAEAAAAJcHVibGljS2V5BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAAD21haW5EQU9Db250cmFjdAkAASwAAAACAgAAAAlkYW9fdXNlcl8FAAAACXB1YmxpY0tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFpBQAAAAckbWF0Y2gwBQAAAAFpAP//////////AQAAAA9nZXRBbHJlYWR5Vm90ZWQAAAACAAAABnZvdGVJZAAAAAlwdWJsaWNLZXkEAAAAByRtYXRjaDAJAAQbAAAAAgUAAAAEdGhpcwkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAGdm90ZUlkAgAAAAFfBQAAAAlwdWJsaWNLZXkCAAAABl92b3RlZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAHQm9vbGVhbgQAAAABYgUAAAAHJG1hdGNoMAUAAAABYgcBAAAAF2dldEN1cnJlbnRZZXNWb3Rlc0ZvcklkAAAAAQAAAAZ2b3RlSWQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAZ2b3RlSWQCAAAABF95ZXMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABaQUAAAAHJG1hdGNoMAUAAAABaQD//////////wEAAAAWZ2V0Q3VycmVudE5vVm90ZXNGb3JJZAAAAAEAAAAGdm90ZUlkBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAGdm90ZUlkAgAAAANfbm8DCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABaQUAAAAHJG1hdGNoMAUAAAABaQD//////////wAAAAQAAAABaQEAAAAMcmVnaXN0ZXJWb3RlAAAAAwAAAAV0aXRsZQAAAARkZXNjAAAABGxpbmsEAAAAD2NhbGxlclB1YmxpY0tleQkAAlgAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkEAAAABnZvdGVJZAkAAlgAAAABCAUAAAABaQAAAA10cmFuc2FjdGlvbklkBAAAAAhlbmRCbG9jawkAAGQAAAACBQAAAAZoZWlnaHQAAAAAAAAAHCAEAAAAC3ZvdGluZ1Bvd2VyCQEAAAASZ2V0Vm90ZXNGcm9tQ2FsbGVyAAAAAQUAAAAPY2FsbGVyUHVibGljS2V5AwkAAGYAAAACBQAAABV2b3RlSW5pdGlhdGVUaHJlc2hvbGQFAAAAC3ZvdGluZ1Bvd2VyCQAAAgAAAAECAAAAMFVzZXIgaGFzIG5vdCBiZWVuIGFjdGl2ZSBlbm91Z2ggb24gdGhlIHBsYXRmb3JtIQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACBQAAAAZ2b3RlSWQCAAAACl9lbmRIZWlnaHQFAAAACGVuZEJsb2NrCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgUAAAAGdm90ZUlkAgAAAAZfdGl0bGUFAAAABXRpdGxlCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgUAAAAGdm90ZUlkAgAAAAxfZGVzY3JpcHRpb24FAAAABGRlc2MJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACBQAAAAZ2b3RlSWQCAAAABV9saW5rBQAAAARsaW5rCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAABnZvdGVJZAIAAAAEX3llcwAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACBQAAAAZ2b3RlSWQCAAAAA19ubwAAAAAAAAAAAAUAAAADbmlsAAAAAWkBAAAAA3llcwAAAAEAAAAGdm90ZUlkBAAAAA9jYWxsZXJQdWJsaWNLZXkJAAJYAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BAAAAA9jdXJyZW50WWVzVm90ZXMJAQAAABdnZXRDdXJyZW50WWVzVm90ZXNGb3JJZAAAAAEFAAAABnZvdGVJZAQAAAAPdm90ZXNGcm9tQ2FsbGVyCQEAAAASZ2V0Vm90ZXNGcm9tQ2FsbGVyAAAAAQUAAAAPY2FsbGVyUHVibGljS2V5BAAAAAxhbHJlYWR5Vm90ZWQJAQAAAA9nZXRBbHJlYWR5Vm90ZWQAAAACBQAAAAZ2b3RlSWQFAAAAD2NhbGxlclB1YmxpY0tleQMJAAAAAAAAAgUAAAAPY3VycmVudFllc1ZvdGVzAP//////////CQAAAgAAAAECAAAAD1ZvdGUgbm90IGZvdW5kIQMFAAAADGFscmVhZHlWb3RlZAkAAAIAAAABAgAAABZBZGRyZXNzIGFscmVhZHkgdm90ZWQhCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAABnZvdGVJZAIAAAAEX3llcwkAAGQAAAACBQAAAA9jdXJyZW50WWVzVm90ZXMFAAAAD3ZvdGVzRnJvbUNhbGxlcgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAGdm90ZUlkAgAAAAFfBQAAAA9jYWxsZXJQdWJsaWNLZXkCAAAABF95ZXMFAAAAD3ZvdGVzRnJvbUNhbGxlcgkABEwAAAACCQEAAAAMQm9vbGVhbkVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAGdm90ZUlkAgAAAAFfBQAAAA9jYWxsZXJQdWJsaWNLZXkCAAAABl92b3RlZAYFAAAAA25pbAAAAAFpAQAAAAJubwAAAAEAAAAGdm90ZUlkBAAAAA9jYWxsZXJQdWJsaWNLZXkJAAJYAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BAAAAA5jdXJyZW50Tm9Wb3RlcwkBAAAAFmdldEN1cnJlbnROb1ZvdGVzRm9ySWQAAAABBQAAAAZ2b3RlSWQEAAAAD3ZvdGVzRnJvbUNhbGxlcgkBAAAAEmdldFZvdGVzRnJvbUNhbGxlcgAAAAEFAAAAD2NhbGxlclB1YmxpY0tleQQAAAAMYWxyZWFkeVZvdGVkCQEAAAAPZ2V0QWxyZWFkeVZvdGVkAAAAAgUAAAAGdm90ZUlkBQAAAA9jYWxsZXJQdWJsaWNLZXkDCQAAAAAAAAIFAAAADmN1cnJl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", "height": 2965821, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6fcRYCzvb6mLmjpGTEqqzn7ZXpaJQ5WcCUzG57Z3T8o9 Next: 89M6nn5Tu9uL2j6m7rJFuEGPoRLmtP8FMeCiMK9PY5WQ Diff:
OldNewDifferences
33 {-# CONTENT_TYPE DAPP #-}
44 let a = addressFromStringValue("3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV")
55
6-func b (c) = {
7- let d = getInteger(a, ("dao_user_" + c))
8- if ($isInstanceOf(d, "Int"))
6+let b = 100000000
7+
8+func c (d) = {
9+ let e = getInteger(a, ("dao_user_" + d))
10+ if ($isInstanceOf(e, "Int"))
911 then {
10- let e = d
11- e
12+ let f = e
13+ f
1214 }
1315 else -1
1416 }
1517
1618
17-func f (g,c) = {
18- let d = getBoolean(this, (((g + "_") + c) + "_voted"))
19- if ($isInstanceOf(d, "Boolean"))
19+func g (h,d) = {
20+ let e = getBoolean(this, (((h + "_") + d) + "_voted"))
21+ if ($isInstanceOf(e, "Boolean"))
2022 then {
21- let h = d
22- h
23+ let i = e
24+ i
2325 }
2426 else false
2527 }
2628
2729
28-func i (g) = {
29- let d = getInteger(this, (g + "_yes"))
30- if ($isInstanceOf(d, "Int"))
30+func j (h) = {
31+ let e = getInteger(this, (h + "_yes"))
32+ if ($isInstanceOf(e, "Int"))
3133 then {
32- let e = d
33- e
34+ let f = e
35+ f
3436 }
3537 else -1
3638 }
3739
3840
39-func j (g) = {
40- let d = getInteger(this, (g + "_no"))
41- if ($isInstanceOf(d, "Int"))
41+func k (h) = {
42+ let e = getInteger(this, (h + "_no"))
43+ if ($isInstanceOf(e, "Int"))
4244 then {
43- let e = d
44- e
45+ let f = e
46+ f
4547 }
4648 else -1
4749 }
4850
4951
50-@Callable(e)
51-func registerVote (k,l,m) = {
52- let g = toBase58String(e.transactionId)
53- let n = (height + 7200)
54-[IntegerEntry((g + "_endHeight"), n), StringEntry((g + "_title"), k), StringEntry((g + "_description"), l), StringEntry((g + "_link"), m), IntegerEntry((g + "_yes"), 0), IntegerEntry((g + "_no"), 0)]
52+@Callable(f)
53+func registerVote (l,m,n) = {
54+ let o = toBase58String(f.callerPublicKey)
55+ let h = toBase58String(f.transactionId)
56+ let p = (height + 7200)
57+ let q = c(o)
58+ if ((b > q))
59+ then throw("User has not been active enough on the platform!")
60+ else [IntegerEntry((h + "_endHeight"), p), StringEntry((h + "_title"), l), StringEntry((h + "_description"), m), StringEntry((h + "_link"), n), IntegerEntry((h + "_yes"), 0), IntegerEntry((h + "_no"), 0)]
5561 }
5662
5763
5864
59-@Callable(e)
60-func yes (g) = {
61- let o = toBase58String(e.callerPublicKey)
62- let p = i(g)
63- let q = b(o)
64- let r = f(g, o)
65- if ((p == -1))
65+@Callable(f)
66+func yes (h) = {
67+ let o = toBase58String(f.callerPublicKey)
68+ let r = j(h)
69+ let s = c(o)
70+ let t = g(h, o)
71+ if ((r == -1))
6672 then throw("Vote not found!")
67- else if (r)
73+ else if (t)
6874 then throw("Address already voted!")
69- else [IntegerEntry((g + "_yes"), (p + q)), IntegerEntry((((g + "_") + o) + "_yes"), q), BooleanEntry((((g + "_") + o) + "_voted"), true)]
75+ else [IntegerEntry((h + "_yes"), (r + s)), IntegerEntry((((h + "_") + o) + "_yes"), s), BooleanEntry((((h + "_") + o) + "_voted"), true)]
7076 }
7177
7278
7379
74-@Callable(e)
75-func no (g) = {
76- let o = toBase58String(e.callerPublicKey)
77- let s = j(g)
78- let q = b(o)
79- let r = f(g, o)
80- if ((s == -1))
80+@Callable(f)
81+func no (h) = {
82+ let o = toBase58String(f.callerPublicKey)
83+ let u = k(h)
84+ let s = c(o)
85+ let t = g(h, o)
86+ if ((u == -1))
8187 then throw("Vote not found!")
82- else if (r)
88+ else if (t)
8389 then throw("Address already voted!")
84- else [IntegerEntry((g + "_no"), (s + q)), IntegerEntry((((g + "_") + o) + "_no"), q), BooleanEntry((((g + "_") + o) + "_voted"), true)]
90+ else [IntegerEntry((h + "_no"), (u + s)), IntegerEntry((((h + "_") + o) + "_no"), s), BooleanEntry((((h + "_") + o) + "_voted"), true)]
8591 }
8692
8793
8894
89-@Callable(e)
90-func retractVote (g) = {
91- let o = toBase58String(e.callerPublicKey)
92- let s = j(g)
93- let p = i(g)
94- let t = {
95- let d = getInteger(this, (((g + "_") + o) + "_no"))
96- if ($isInstanceOf(d, "Int"))
95+@Callable(f)
96+func retractVote (h) = {
97+ let o = toBase58String(f.callerPublicKey)
98+ let u = k(h)
99+ let r = j(h)
100+ let v = {
101+ let e = getInteger(this, (((h + "_") + o) + "_no"))
102+ if ($isInstanceOf(e, "Int"))
97103 then {
98- let u = d
99- u
104+ let w = e
105+ w
100106 }
101107 else 0
102108 }
103- let v = {
104- let d = getInteger(this, (((g + "_") + o) + "_yes"))
105- if ($isInstanceOf(d, "Int"))
109+ let x = {
110+ let e = getInteger(this, (((h + "_") + o) + "_yes"))
111+ if ($isInstanceOf(e, "Int"))
106112 then {
107- let u = d
108- u
113+ let w = e
114+ w
109115 }
110116 else 0
111117 }
112- if (if ((p == -1))
118+ if (if ((r == -1))
113119 then true
114- else (s == -1))
120+ else (u == -1))
115121 then throw("No active vote for this vote id!")
116- else [IntegerEntry((g + "_no"), (s - t)), IntegerEntry((g + "_yes"), (p - v)), IntegerEntry((((g + "_") + o) + "_no"), 0), IntegerEntry((((g + "_") + o) + "_yes"), 0), BooleanEntry((((g + "_") + o) + "_voted"), false)]
122+ else [IntegerEntry((h + "_no"), (u - v)), IntegerEntry((h + "_yes"), (r - x)), IntegerEntry((((h + "_") + o) + "_no"), 0), IntegerEntry((((h + "_") + o) + "_yes"), 0), BooleanEntry((((h + "_") + o) + "_voted"), false)]
117123 }
118124
119125
120-@Verifier(w)
121-func x () = sigVerify(w.bodyBytes, w.proofs[0], w.senderPublicKey)
126+@Verifier(y)
127+func z () = sigVerify(y.bodyBytes, y.proofs[0], y.senderPublicKey)
122128
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = addressFromStringValue("3N9tKixzqTYWnEXQxrDQ5pBTGvQd6sFsvmV")
55
6-func b (c) = {
7- let d = getInteger(a, ("dao_user_" + c))
8- if ($isInstanceOf(d, "Int"))
6+let b = 100000000
7+
8+func c (d) = {
9+ let e = getInteger(a, ("dao_user_" + d))
10+ if ($isInstanceOf(e, "Int"))
911 then {
10- let e = d
11- e
12+ let f = e
13+ f
1214 }
1315 else -1
1416 }
1517
1618
17-func f (g,c) = {
18- let d = getBoolean(this, (((g + "_") + c) + "_voted"))
19- if ($isInstanceOf(d, "Boolean"))
19+func g (h,d) = {
20+ let e = getBoolean(this, (((h + "_") + d) + "_voted"))
21+ if ($isInstanceOf(e, "Boolean"))
2022 then {
21- let h = d
22- h
23+ let i = e
24+ i
2325 }
2426 else false
2527 }
2628
2729
28-func i (g) = {
29- let d = getInteger(this, (g + "_yes"))
30- if ($isInstanceOf(d, "Int"))
30+func j (h) = {
31+ let e = getInteger(this, (h + "_yes"))
32+ if ($isInstanceOf(e, "Int"))
3133 then {
32- let e = d
33- e
34+ let f = e
35+ f
3436 }
3537 else -1
3638 }
3739
3840
39-func j (g) = {
40- let d = getInteger(this, (g + "_no"))
41- if ($isInstanceOf(d, "Int"))
41+func k (h) = {
42+ let e = getInteger(this, (h + "_no"))
43+ if ($isInstanceOf(e, "Int"))
4244 then {
43- let e = d
44- e
45+ let f = e
46+ f
4547 }
4648 else -1
4749 }
4850
4951
50-@Callable(e)
51-func registerVote (k,l,m) = {
52- let g = toBase58String(e.transactionId)
53- let n = (height + 7200)
54-[IntegerEntry((g + "_endHeight"), n), StringEntry((g + "_title"), k), StringEntry((g + "_description"), l), StringEntry((g + "_link"), m), IntegerEntry((g + "_yes"), 0), IntegerEntry((g + "_no"), 0)]
52+@Callable(f)
53+func registerVote (l,m,n) = {
54+ let o = toBase58String(f.callerPublicKey)
55+ let h = toBase58String(f.transactionId)
56+ let p = (height + 7200)
57+ let q = c(o)
58+ if ((b > q))
59+ then throw("User has not been active enough on the platform!")
60+ else [IntegerEntry((h + "_endHeight"), p), StringEntry((h + "_title"), l), StringEntry((h + "_description"), m), StringEntry((h + "_link"), n), IntegerEntry((h + "_yes"), 0), IntegerEntry((h + "_no"), 0)]
5561 }
5662
5763
5864
59-@Callable(e)
60-func yes (g) = {
61- let o = toBase58String(e.callerPublicKey)
62- let p = i(g)
63- let q = b(o)
64- let r = f(g, o)
65- if ((p == -1))
65+@Callable(f)
66+func yes (h) = {
67+ let o = toBase58String(f.callerPublicKey)
68+ let r = j(h)
69+ let s = c(o)
70+ let t = g(h, o)
71+ if ((r == -1))
6672 then throw("Vote not found!")
67- else if (r)
73+ else if (t)
6874 then throw("Address already voted!")
69- else [IntegerEntry((g + "_yes"), (p + q)), IntegerEntry((((g + "_") + o) + "_yes"), q), BooleanEntry((((g + "_") + o) + "_voted"), true)]
75+ else [IntegerEntry((h + "_yes"), (r + s)), IntegerEntry((((h + "_") + o) + "_yes"), s), BooleanEntry((((h + "_") + o) + "_voted"), true)]
7076 }
7177
7278
7379
74-@Callable(e)
75-func no (g) = {
76- let o = toBase58String(e.callerPublicKey)
77- let s = j(g)
78- let q = b(o)
79- let r = f(g, o)
80- if ((s == -1))
80+@Callable(f)
81+func no (h) = {
82+ let o = toBase58String(f.callerPublicKey)
83+ let u = k(h)
84+ let s = c(o)
85+ let t = g(h, o)
86+ if ((u == -1))
8187 then throw("Vote not found!")
82- else if (r)
88+ else if (t)
8389 then throw("Address already voted!")
84- else [IntegerEntry((g + "_no"), (s + q)), IntegerEntry((((g + "_") + o) + "_no"), q), BooleanEntry((((g + "_") + o) + "_voted"), true)]
90+ else [IntegerEntry((h + "_no"), (u + s)), IntegerEntry((((h + "_") + o) + "_no"), s), BooleanEntry((((h + "_") + o) + "_voted"), true)]
8591 }
8692
8793
8894
89-@Callable(e)
90-func retractVote (g) = {
91- let o = toBase58String(e.callerPublicKey)
92- let s = j(g)
93- let p = i(g)
94- let t = {
95- let d = getInteger(this, (((g + "_") + o) + "_no"))
96- if ($isInstanceOf(d, "Int"))
95+@Callable(f)
96+func retractVote (h) = {
97+ let o = toBase58String(f.callerPublicKey)
98+ let u = k(h)
99+ let r = j(h)
100+ let v = {
101+ let e = getInteger(this, (((h + "_") + o) + "_no"))
102+ if ($isInstanceOf(e, "Int"))
97103 then {
98- let u = d
99- u
104+ let w = e
105+ w
100106 }
101107 else 0
102108 }
103- let v = {
104- let d = getInteger(this, (((g + "_") + o) + "_yes"))
105- if ($isInstanceOf(d, "Int"))
109+ let x = {
110+ let e = getInteger(this, (((h + "_") + o) + "_yes"))
111+ if ($isInstanceOf(e, "Int"))
106112 then {
107- let u = d
108- u
113+ let w = e
114+ w
109115 }
110116 else 0
111117 }
112- if (if ((p == -1))
118+ if (if ((r == -1))
113119 then true
114- else (s == -1))
120+ else (u == -1))
115121 then throw("No active vote for this vote id!")
116- else [IntegerEntry((g + "_no"), (s - t)), IntegerEntry((g + "_yes"), (p - v)), IntegerEntry((((g + "_") + o) + "_no"), 0), IntegerEntry((((g + "_") + o) + "_yes"), 0), BooleanEntry((((g + "_") + o) + "_voted"), false)]
122+ else [IntegerEntry((h + "_no"), (u - v)), IntegerEntry((h + "_yes"), (r - x)), IntegerEntry((((h + "_") + o) + "_no"), 0), IntegerEntry((((h + "_") + o) + "_yes"), 0), BooleanEntry((((h + "_") + o) + "_voted"), false)]
117123 }
118124
119125
120-@Verifier(w)
121-func x () = sigVerify(w.bodyBytes, w.proofs[0], w.senderPublicKey)
126+@Verifier(y)
127+func z () = sigVerify(y.bodyBytes, y.proofs[0], y.senderPublicKey)
122128

github/deemru/w8io/3ef1775 
70.84 ms