tx · DNSZZPs6P94F1rKFD8UPHf4MPMYNeCJZcEUyHRqa89cn

3NBbZk47jNZF62ufE2SdUWdEU7LfbKs2V8w:  -0.01400000 Waves

2019.06.23 18:28 [554874] smart account 3NBbZk47jNZF62ufE2SdUWdEU7LfbKs2V8w > SELF 0.00000000 Waves

{ "type": 13, "id": "DNSZZPs6P94F1rKFD8UPHf4MPMYNeCJZcEUyHRqa89cn", "fee": 1400000, "feeAssetId": null, "timestamp": 1561303738149, "version": 1, "sender": "3NBbZk47jNZF62ufE2SdUWdEU7LfbKs2V8w", "senderPublicKey": "31fZHhqkzZc4NpQLx9Buu4zyJn97jkcqPgnmZAmLKKEn", "proofs": [ "4UfBGDJoiJ5EeznboMf7aUfR9jrBB8LJ3C8bHPytpQtHBWZgAPfXcGfRgNdHutSxcmjqS3VE8zViXxhxYih1bt6n" ], "script": "base64:AAIDAAAAAAAAAAAAAAAeAAAAAAZWT1RFUlMAAAAAAAAAAAMAAAAABlFVT1JVTQAAAAAAAAAAAgAAAAAGVk9USU5HAgAAAAZ2b3RpbmcAAAAABlJFVkVBTAIAAAAGcmV2ZWFsAAAAAAhGRUFUVVJFRAIAAAAIZmVhdHVyZWQAAAAACERFTElTVEVEAgAAAAhkZWxpc3RlZAAAAAAETk9ORQIAAAAEbm9uZQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABAAAAA2tleQQAAAADbnVtBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABQAAAANudW0BAAAAC2dldFN0ckJ5S2V5AAAAAQAAAANrZXkEAAAAA3N0cgQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQUAAAAETk9ORQUAAAADc3RyAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABAAAABGl0ZW0JAAEsAAAAAgUAAAAEaXRlbQIAAAAGX3ByaWNlAQAAABFnZXRWYWx1ZUl0ZW1QcmljZQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAD2dldEtleUl0ZW1QcmljZQAAAAEFAAAABGl0ZW0BAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAARpdGVtAgAAAAFfBQAAAAR1c2VyAgAAAARfY250AQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgUAAAAEdXNlcgUAAAAEaXRlbQEAAAAKZ2V0S2V5SXRlbQAAAAIAAAAIc3VwcGxpZXIAAAAFdGl0bGUJAAEsAAAAAgIAAAAFaXRlbV8JAAJYAAAAAQkAAfcAAAABCQABmwAAAAEJAAEsAAAAAgUAAAAIc3VwcGxpZXIFAAAABXRpdGxlAQAAAA5nZXRLZXlJdGVtRGF0YQAAAAEAAAAEaXRlbQkAASwAAAACBQAAAARpdGVtAgAAAAVfZGF0YQEAAAASZ2V0S2V5SXRlbVN1cHBsaWVyAAAAAQAAAARpdGVtCQABLAAAAAIFAAAABGl0ZW0CAAAABl9vd25lcgEAAAAUZ2V0VmFsdWVJdGVtU3VwcGxpZXIAAAABAAAABGl0ZW0JAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABJnZXRLZXlJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABAAAAB2FjY291bnQJAAEsAAAAAgUAAAAHYWNjb3VudAIAAAAIX2JhbGFuY2UBAAAAF2dldFZhbHVlQmFsYW5jZVN1cHBsaWVyAAAAAQAAAAdhY2NvdW50CQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAVZ2V0S2V5QmFsYW5jZVN1cHBsaWVyAAAAAQUAAAAHYWNjb3VudAEAAAAMZ2V0S2V5Q29tbWl0AAAAAgAAAARpdGVtAAAABHVzZXIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAABGl0ZW0CAAAAAV8FAAAABHVzZXICAAAAB19jb21taXQBAAAADmdldFZhbHVlQ29tbWl0AAAAAgAAAARpdGVtAAAABHVzZXIJAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAAAxnZXRLZXlDb21taXQAAAACBQAAAARpdGVtBQAAAAR1c2VyAQAAABJnZXRLZXlDb21taXRzQ291bnQAAAABAAAABGl0ZW0JAAEsAAAAAgUAAAAEaXRlbQIAAAAHX2NvbWNudAEAAAAUZ2V0VmFsdWVDb21taXRzQ291bnQAAAABAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABJnZXRLZXlDb21taXRzQ291bnQAAAABBQAAAARpdGVtAQAAAAxnZXRLZXlSZXZlYWwAAAACAAAABGl0ZW0AAAAEdXNlcgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAEaXRlbQIAAAABXwUAAAAEdXNlcgIAAAAHX3JldmVhbAEAAAAOZ2V0VmFsdWVSZXZlYWwAAAACAAAABGl0ZW0AAAAEdXNlcgkBAAAAC2dldFN0ckJ5S2V5AAAAAQkBAAAADGdldEtleVJldmVhbAAAAAIFAAAABGl0ZW0FAAAABHVzZXIBAAAAEGdldEtleUl0ZW1TdGF0dXMAAAABAAAABGl0ZW0JAAEsAAAAAgUAAAAEaXRlbQIAAAAHX3N0YXR1cwEAAAASZ2V0VmFsdWVJdGVtU3RhdHVzAAAAAQAAAARpdGVtCQEAAAALZ2V0U3RyQnlLZXkAAAABCQEAAAAQZ2V0S2V5SXRlbVN0YXR1cwAAAAEFAAAABGl0ZW0BAAAAD2dldEtleVZvdGVDb3VudAAAAAIAAAAEaXRlbQAAAAR2b3RlCQABLAAAAAIJAAEsAAAAAgUAAAAEaXRlbQIAAAAFX3JlczoFAAAABHZvdGUBAAAAEWdldFZhbHVlVm90ZUNvdW50AAAAAgAAAARpdGVtAAAABHZvdGUJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAAA9nZXRLZXlWb3RlQ291bnQAAAACBQAAAARpdGVtBQAAAAR2b3RlAAAAAA5vd25lclB1YmxpY0tleQEAAAAgHeL4VJbwi49VnHxyrKhRTVGRAasVQYe9CPUMM7GlaGcAAAAFAAAAAWkBAAAACHB1cmNoYXNlAAAAAQAAAARpdGVtBAAAAANwbXQJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAAAgY2FuIHVzZSBXQVZFUyBvbmx5IGF0IHRoZSBtb21lbnQEAAAAC3VzZXJBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAABXByaWNlCQEAAAARZ2V0VmFsdWVJdGVtUHJpY2UAAAABBQAAAARpdGVtBAAAAA9zdXBwbGllckFkZHJlc3MJAQAAABRnZXRWYWx1ZUl0ZW1TdXBwbGllcgAAAAEFAAAABGl0ZW0DCQAAZgAAAAIFAAAABXByaWNlCAUAAAADcG10AAAABmFtb3VudAkAAAIAAAABAgAAAC5wdXJjaGFzZSBhbW91bnQgY2Fubm90IGJlIGxlc3MgdGhhbiBpdGVtIHByaWNlAwkAAGYAAAACCAUAAAADcG10AAAABmFtb3VudAUAAAAFcHJpY2UJAAACAAAAAQIAAAAwcHVyY2hhc2UgYW1vdW50IGNhbm5vdCBiZSBoaWdoZXIgdGhhbiBpdGVtIHByaWNlAwkAAAAAAAACBQAAAA9zdXBwbGllckFkZHJlc3MFAAAABE5PTkUJAAACAAAAAQIAAAAXc3VwcGxpZXIgZG9lcyBub3QgZXhpc3QJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABVnZXRLZXlVc2VySXRlbUNvdW50ZXIAAAACBQAAAAt1c2VyQWRkcmVzcwUAAAAEaXRlbQkAAGQAAAACCQEAAAAXZ2V0VmFsdWVVc2VySXRlbUNvdW50ZXIAAAACBQAAAAt1c2VyQWRkcmVzcwUAAAAEaXRlbQAAAAAAAAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAFWdldEtleUJhbGFuY2VTdXBwbGllcgAAAAEFAAAAD3N1cHBsaWVyQWRkcmVzcwkAAGQAAAACCQEAAAAXZ2V0VmFsdWVCYWxhbmNlU3VwcGxpZXIAAAABBQAAAA9zdXBwbGllckFkZHJlc3MIBQAAAANwbXQAAAAGYW1vdW50BQAAAANuaWwAAAABaQEAAAAHYWRkSXRlbQAAAAMAAAAFdGl0bGUAAAAFcHJpY2UAAAAEZGF0YQQAAAAPc3VwcGxpZXJBZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAABGl0ZW0JAQAAAApnZXRLZXlJdGVtAAAAAgUAAAAPc3VwcGxpZXJBZGRyZXNzBQAAAAV0aXRsZQMJAABnAAAAAgAAAAAAAAAAAAUAAAAFcHJpY2UJAAACAAAAAQIAAAAucHVyY2hhc2UgYW1vdW50IGNhbm5vdCBiZSBsZXNzIHRoZW4gaXRlbSBwcmljZQMJAQAAAAIhPQAAAAIJAQAAABRnZXRWYWx1ZUl0ZW1TdXBwbGllcgAAAAEFAAAABGl0ZW0FAAAABE5PTkUJAAACAAAAAQIAAAAYYW4gaXRlbSBpcyBhbHJlYWR5IGV4aXN0CQEAAAAIV3JpdGVTZXQAAAAB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", "chainId": 84, "height": 554874, "spentComplexity": 0 } View: original | compacted Prev: G4YsS8JKZPu3QsLtuPGt3dq4yFW12RsF313bL3NCtmCF Next: none Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let a = "none"
4+let a = 3
55
6-func b (c) = {
7- let d = {
8- let e = getInteger(this, c)
9- if ($isInstanceOf(e, "Int"))
6+let b = 2
7+
8+let c = "voting"
9+
10+let d = "reveal"
11+
12+let e = "featured"
13+
14+let f = "delisted"
15+
16+let g = "none"
17+
18+func h (i) = {
19+ let j = {
20+ let k = getInteger(this, i)
21+ if ($isInstanceOf(k, "Int"))
1022 then {
11- let f = e
12- f
23+ let l = k
24+ l
1325 }
1426 else 0
1527 }
16- d
28+ j
1729 }
1830
1931
20-func g (c) = {
21- let h = {
22- let e = getString(this, c)
23- if ($isInstanceOf(e, "String"))
32+func m (i) = {
33+ let n = {
34+ let k = getString(this, i)
35+ if ($isInstanceOf(k, "String"))
2436 then {
25- let f = e
26- f
37+ let l = k
38+ l
2739 }
28- else a
40+ else g
2941 }
30- h
42+ n
3143 }
3244
3345
34-func i (j) = (j + "_price")
46+func o (p) = (p + "_price")
3547
3648
37-func k (j) = b(i(j))
49+func q (p) = h(o(p))
3850
3951
40-func l (m,j) = (((j + "_") + m) + "_cnt")
52+func r (s,p) = (((p + "_") + s) + "_cnt")
4153
4254
43-func n (m,j) = b(l(m, j))
55+func t (s,p) = h(r(s, p))
4456
4557
46-func o (p,q) = ("item_" + toBase58String(sha256(toBytes((p + q)))))
58+func u (v,w) = ("item_" + toBase58String(sha256(toBytes((v + w)))))
4759
4860
49-func r (j) = (j + "_data")
61+func x (p) = (p + "_data")
5062
5163
52-func s (j) = (j + "_owner")
64+func y (p) = (p + "_owner")
5365
5466
55-func t (j) = g(s(j))
67+func z (p) = m(y(p))
5668
5769
58-func u (v) = (v + "_balance")
70+func A (B) = (B + "_balance")
5971
6072
61-func w (v) = b(u(v))
73+func C (B) = h(A(B))
6274
6375
64-let x = base58'31fZHhqkzZc4NpQLx9Buu4zyJn97jkcqPgnmZAmLKKEn'
76+func D (p,s) = (((p + "_") + s) + "_commit")
6577
66-@Callable(y)
67-func purchase (j) = {
68- let z = extract(y.payment)
69- if (isDefined(z.assetId))
78+
79+func E (p,s) = m(D(p, s))
80+
81+
82+func F (p) = (p + "_comcnt")
83+
84+
85+func G (p) = h(F(p))
86+
87+
88+func H (p,s) = (((p + "_") + s) + "_reveal")
89+
90+
91+func I (p,s) = m(H(p, s))
92+
93+
94+func J (p) = (p + "_status")
95+
96+
97+func K (p) = m(J(p))
98+
99+
100+func L (p,M) = ((p + "_res:") + M)
101+
102+
103+func N (p,M) = h(L(p, M))
104+
105+
106+let O = base58'31fZHhqkzZc4NpQLx9Buu4zyJn97jkcqPgnmZAmLKKEn'
107+
108+@Callable(P)
109+func purchase (p) = {
110+ let Q = extract(P.payment)
111+ if (isDefined(Q.assetId))
70112 then throw("can use WAVES only at the moment")
71113 else {
72- let A = toBase58String(y.caller.bytes)
73- let B = k(j)
74- let C = t(j)
75- if ((B > z.amount))
114+ let R = toBase58String(P.caller.bytes)
115+ let S = q(p)
116+ let T = z(p)
117+ if ((S > Q.amount))
76118 then throw("purchase amount cannot be less than item price")
77- else if ((z.amount > B))
119+ else if ((Q.amount > S))
78120 then throw("purchase amount cannot be higher than item price")
79- else if ((C == a))
121+ else if ((T == g))
80122 then throw("supplier does not exist")
81- else WriteSet([DataEntry(l(A, j), (n(A, j) + 1)), DataEntry(u(C), (w(C) + z.amount))])
123+ else WriteSet([DataEntry(r(R, p), (t(R, p) + 1)), DataEntry(A(T), (C(T) + Q.amount))])
82124 }
83125 }
84126
85127
86128
87-@Callable(y)
88-func addItem (q,B,D) = {
89- let C = toBase58String(y.caller.bytes)
90- let j = o(C, q)
91- if ((0 >= B))
129+@Callable(P)
130+func addItem (w,S,U) = {
131+ let T = toBase58String(P.caller.bytes)
132+ let p = u(T, w)
133+ if ((0 >= S))
92134 then throw("purchase amount cannot be less then item price")
93- else if ((t(j) != a))
135+ else if ((z(p) != g))
94136 then throw("an item is already exist")
95- else WriteSet([DataEntry(s(j), C), DataEntry(i(j), B), DataEntry(r(j), D)])
137+ else WriteSet([DataEntry(y(p), T), DataEntry(o(p), S), DataEntry(x(p), U)])
96138 }
97139
98140
99141
100-@Callable(y)
142+@Callable(P)
101143 func withdraw () = {
102- let C = toBase58String(y.caller.bytes)
103- let E = w(C)
104- if ((0 >= E))
144+ let T = toBase58String(P.caller.bytes)
145+ let V = C(T)
146+ if ((0 >= V))
105147 then throw("insufficient balance")
106- else ScriptResult(WriteSet([DataEntry(u(C), 0)]), TransferSet([ScriptTransfer(addressFromStringValue(C), E, unit)]))
148+ else ScriptResult(WriteSet([DataEntry(A(T), 0)]), TransferSet([ScriptTransfer(addressFromStringValue(T), V, unit)]))
107149 }
108150
109151
110-@Verifier(F)
111-func G () = {
112- let e = F
113- if ($isInstanceOf(e, "SetScriptTransaction"))
152+
153+@Callable(P)
154+func voteReveal (p,M,W) = {
155+ let s = toBase58String(P.caller.bytes)
156+ let X = K(p)
157+ let Y = (N(p, M) + 1)
158+ if ((toBase58String(sha256(toBytes((M + W)))) != E(p, s)))
159+ then throw("reveal data is not valid")
160+ else if ((a > G(p)))
161+ then throw("max num of voters not reached")
162+ else if ((I(p, s) != g))
163+ then throw("user has already participated")
164+ else if (if ((X != c))
165+ then (X != d)
166+ else false)
167+ then throw("wrong status")
168+ else if (if ((M != e))
169+ then (M != f)
170+ else false)
171+ then throw("wrong vote")
172+ else if (if ((X == e))
173+ then true
174+ else (X == f))
175+ then throw("vote finished")
176+ else WriteSet([DataEntry(H(p, s), M), DataEntry(L(p, M), Y), DataEntry(J(p), if ((Y >= b))
177+ then M
178+ else d)])
179+ }
180+
181+
182+
183+@Callable(P)
184+func voteCommit (p,Z) = {
185+ let s = toBase58String(P.caller.bytes)
186+ let aa = G(p)
187+ let X = K(p)
188+ if ((aa >= a))
189+ then throw("reached max num of voters")
190+ else if ((E(p, s) != g))
191+ then throw("user has already participated")
192+ else if ((y(p) == g))
193+ then throw("item dose not exist")
194+ else if (if ((X != g))
195+ then (X != c)
196+ else false)
197+ then throw("voting is not possible")
198+ else WriteSet([DataEntry(D(p, s), Z), DataEntry(F(p), (aa + 1)), DataEntry(J(p), if ((aa == a))
199+ then d
200+ else c)])
201+ }
202+
203+
204+@Verifier(ab)
205+func ac () = {
206+ let k = ab
207+ if ($isInstanceOf(k, "SetScriptTransaction"))
114208 then {
115- let H = e
116- sigVerify(F.bodyBytes, F.proofs[0], x)
209+ let ad = k
210+ sigVerify(ab.bodyBytes, ab.proofs[0], O)
117211 }
118- else if ($isInstanceOf(e, "DataTransaction"))
212+ else if ($isInstanceOf(k, "DataTransaction"))
119213 then {
120- let H = e
214+ let ad = k
121215 true
122216 }
123217 else false
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let a = "none"
4+let a = 3
55
6-func b (c) = {
7- let d = {
8- let e = getInteger(this, c)
9- if ($isInstanceOf(e, "Int"))
6+let b = 2
7+
8+let c = "voting"
9+
10+let d = "reveal"
11+
12+let e = "featured"
13+
14+let f = "delisted"
15+
16+let g = "none"
17+
18+func h (i) = {
19+ let j = {
20+ let k = getInteger(this, i)
21+ if ($isInstanceOf(k, "Int"))
1022 then {
11- let f = e
12- f
23+ let l = k
24+ l
1325 }
1426 else 0
1527 }
16- d
28+ j
1729 }
1830
1931
20-func g (c) = {
21- let h = {
22- let e = getString(this, c)
23- if ($isInstanceOf(e, "String"))
32+func m (i) = {
33+ let n = {
34+ let k = getString(this, i)
35+ if ($isInstanceOf(k, "String"))
2436 then {
25- let f = e
26- f
37+ let l = k
38+ l
2739 }
28- else a
40+ else g
2941 }
30- h
42+ n
3143 }
3244
3345
34-func i (j) = (j + "_price")
46+func o (p) = (p + "_price")
3547
3648
37-func k (j) = b(i(j))
49+func q (p) = h(o(p))
3850
3951
40-func l (m,j) = (((j + "_") + m) + "_cnt")
52+func r (s,p) = (((p + "_") + s) + "_cnt")
4153
4254
43-func n (m,j) = b(l(m, j))
55+func t (s,p) = h(r(s, p))
4456
4557
46-func o (p,q) = ("item_" + toBase58String(sha256(toBytes((p + q)))))
58+func u (v,w) = ("item_" + toBase58String(sha256(toBytes((v + w)))))
4759
4860
49-func r (j) = (j + "_data")
61+func x (p) = (p + "_data")
5062
5163
52-func s (j) = (j + "_owner")
64+func y (p) = (p + "_owner")
5365
5466
55-func t (j) = g(s(j))
67+func z (p) = m(y(p))
5668
5769
58-func u (v) = (v + "_balance")
70+func A (B) = (B + "_balance")
5971
6072
61-func w (v) = b(u(v))
73+func C (B) = h(A(B))
6274
6375
64-let x = base58'31fZHhqkzZc4NpQLx9Buu4zyJn97jkcqPgnmZAmLKKEn'
76+func D (p,s) = (((p + "_") + s) + "_commit")
6577
66-@Callable(y)
67-func purchase (j) = {
68- let z = extract(y.payment)
69- if (isDefined(z.assetId))
78+
79+func E (p,s) = m(D(p, s))
80+
81+
82+func F (p) = (p + "_comcnt")
83+
84+
85+func G (p) = h(F(p))
86+
87+
88+func H (p,s) = (((p + "_") + s) + "_reveal")
89+
90+
91+func I (p,s) = m(H(p, s))
92+
93+
94+func J (p) = (p + "_status")
95+
96+
97+func K (p) = m(J(p))
98+
99+
100+func L (p,M) = ((p + "_res:") + M)
101+
102+
103+func N (p,M) = h(L(p, M))
104+
105+
106+let O = base58'31fZHhqkzZc4NpQLx9Buu4zyJn97jkcqPgnmZAmLKKEn'
107+
108+@Callable(P)
109+func purchase (p) = {
110+ let Q = extract(P.payment)
111+ if (isDefined(Q.assetId))
70112 then throw("can use WAVES only at the moment")
71113 else {
72- let A = toBase58String(y.caller.bytes)
73- let B = k(j)
74- let C = t(j)
75- if ((B > z.amount))
114+ let R = toBase58String(P.caller.bytes)
115+ let S = q(p)
116+ let T = z(p)
117+ if ((S > Q.amount))
76118 then throw("purchase amount cannot be less than item price")
77- else if ((z.amount > B))
119+ else if ((Q.amount > S))
78120 then throw("purchase amount cannot be higher than item price")
79- else if ((C == a))
121+ else if ((T == g))
80122 then throw("supplier does not exist")
81- else WriteSet([DataEntry(l(A, j), (n(A, j) + 1)), DataEntry(u(C), (w(C) + z.amount))])
123+ else WriteSet([DataEntry(r(R, p), (t(R, p) + 1)), DataEntry(A(T), (C(T) + Q.amount))])
82124 }
83125 }
84126
85127
86128
87-@Callable(y)
88-func addItem (q,B,D) = {
89- let C = toBase58String(y.caller.bytes)
90- let j = o(C, q)
91- if ((0 >= B))
129+@Callable(P)
130+func addItem (w,S,U) = {
131+ let T = toBase58String(P.caller.bytes)
132+ let p = u(T, w)
133+ if ((0 >= S))
92134 then throw("purchase amount cannot be less then item price")
93- else if ((t(j) != a))
135+ else if ((z(p) != g))
94136 then throw("an item is already exist")
95- else WriteSet([DataEntry(s(j), C), DataEntry(i(j), B), DataEntry(r(j), D)])
137+ else WriteSet([DataEntry(y(p), T), DataEntry(o(p), S), DataEntry(x(p), U)])
96138 }
97139
98140
99141
100-@Callable(y)
142+@Callable(P)
101143 func withdraw () = {
102- let C = toBase58String(y.caller.bytes)
103- let E = w(C)
104- if ((0 >= E))
144+ let T = toBase58String(P.caller.bytes)
145+ let V = C(T)
146+ if ((0 >= V))
105147 then throw("insufficient balance")
106- else ScriptResult(WriteSet([DataEntry(u(C), 0)]), TransferSet([ScriptTransfer(addressFromStringValue(C), E, unit)]))
148+ else ScriptResult(WriteSet([DataEntry(A(T), 0)]), TransferSet([ScriptTransfer(addressFromStringValue(T), V, unit)]))
107149 }
108150
109151
110-@Verifier(F)
111-func G () = {
112- let e = F
113- if ($isInstanceOf(e, "SetScriptTransaction"))
152+
153+@Callable(P)
154+func voteReveal (p,M,W) = {
155+ let s = toBase58String(P.caller.bytes)
156+ let X = K(p)
157+ let Y = (N(p, M) + 1)
158+ if ((toBase58String(sha256(toBytes((M + W)))) != E(p, s)))
159+ then throw("reveal data is not valid")
160+ else if ((a > G(p)))
161+ then throw("max num of voters not reached")
162+ else if ((I(p, s) != g))
163+ then throw("user has already participated")
164+ else if (if ((X != c))
165+ then (X != d)
166+ else false)
167+ then throw("wrong status")
168+ else if (if ((M != e))
169+ then (M != f)
170+ else false)
171+ then throw("wrong vote")
172+ else if (if ((X == e))
173+ then true
174+ else (X == f))
175+ then throw("vote finished")
176+ else WriteSet([DataEntry(H(p, s), M), DataEntry(L(p, M), Y), DataEntry(J(p), if ((Y >= b))
177+ then M
178+ else d)])
179+ }
180+
181+
182+
183+@Callable(P)
184+func voteCommit (p,Z) = {
185+ let s = toBase58String(P.caller.bytes)
186+ let aa = G(p)
187+ let X = K(p)
188+ if ((aa >= a))
189+ then throw("reached max num of voters")
190+ else if ((E(p, s) != g))
191+ then throw("user has already participated")
192+ else if ((y(p) == g))
193+ then throw("item dose not exist")
194+ else if (if ((X != g))
195+ then (X != c)
196+ else false)
197+ then throw("voting is not possible")
198+ else WriteSet([DataEntry(D(p, s), Z), DataEntry(F(p), (aa + 1)), DataEntry(J(p), if ((aa == a))
199+ then d
200+ else c)])
201+ }
202+
203+
204+@Verifier(ab)
205+func ac () = {
206+ let k = ab
207+ if ($isInstanceOf(k, "SetScriptTransaction"))
114208 then {
115- let H = e
116- sigVerify(F.bodyBytes, F.proofs[0], x)
209+ let ad = k
210+ sigVerify(ab.bodyBytes, ab.proofs[0], O)
117211 }
118- else if ($isInstanceOf(e, "DataTransaction"))
212+ else if ($isInstanceOf(k, "DataTransaction"))
119213 then {
120- let H = e
214+ let ad = k
121215 true
122216 }
123217 else false
124218 }
125219

github/deemru/w8io/c3f4982 
50.07 ms