tx · 2AxE8MFTnGSXowh6B6r8oHvvdV699UuAcyNhHurLj7qM

3My7wJYH4UFQRZo39mhvufthzek6hN2gsnD:  -0.01400000 Waves

2019.11.19 23:36 [772524] smart account 3My7wJYH4UFQRZo39mhvufthzek6hN2gsnD > SELF 0.00000000 Waves

{ "type": 13, "id": "2AxE8MFTnGSXowh6B6r8oHvvdV699UuAcyNhHurLj7qM", "fee": 1400000, "feeAssetId": null, "timestamp": 1574195811605, "version": 1, "sender": "3My7wJYH4UFQRZo39mhvufthzek6hN2gsnD", "senderPublicKey": "CArT1Lh9JMUYJrbhCAnrLFNqXnrxtjBKmBHutFqooxwy", "proofs": [ "4uojDHE7SnnrxQ8LLf8T9NCZ6qJYWDL7bwmzNznUhmVKcA5TZ7j6SxfW7bAzjSKnzy9VkhQkLijtu2BdNonFqgC7" ], "script": "base64:AAIDAAAAAAAAACEIARIAEgMKAQESBQoDCAEIEgMKAQgSBAoCCAgSBAoCCAgAAAAdAAAAAAROT05FAgAAAARub25lAAAAAAZWT1RFUlMAAAAAAAAAAAMAAAAABlFVT1JVTQAAAAAAAAAAAgAAAAAGVk9USU5HAgAAAAZ2b3RpbmcAAAAABlJFVkVBTAIAAAAGcmV2ZWFsAAAAAAhGRUFUVVJFRAIAAAAIZmVhdHVyZWQAAAAACERFTElTVEVEAgAAAAhkZWxpc3RlZAEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABAAAAA2tleQQAAAADbnVtBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABQAAAANudW0BAAAAC2dldFN0ckJ5S2V5AAAAAQAAAANrZXkEAAAAA3N0cgQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQUAAAAETk9ORQUAAAADc3RyAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABAAAABGl0ZW0JAAEsAAAAAgUAAAAEaXRlbQIAAAAGX3ByaWNlAQAAABFnZXRWYWx1ZUl0ZW1QcmljZQAAAAEAAAAEaXRlbQkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAD2dldEtleUl0ZW1QcmljZQAAAAEFAAAABGl0ZW0BAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAARpdGVtAgAAAAFfBQAAAAR1c2VyAgAAAARfY250AQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIAAAAEdXNlcgAAAARpdGVtCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgUAAAAEdXNlcgUAAAAEaXRlbQEAAAAKZ2V0S2V5SXRlbQAAAAIAAAAIc3VwcGxpZXIAAAAFdGl0bGUJAAEsAAAAAgIAAAAFaXRlbV8JAAJYAAAAAQkAAfcAAAABCQABmwAAAAEJAAEsAAAAAgUAAAAIc3VwcGxpZXIFAAAABXRpdGxlAQAAAA5nZXRLZXlJdGVtRGF0YQAAAAEAAAAEaXRlbQkAASwAAAACBQAAAARpdGVtAgAAAAVfZGF0YQEAAAASZ2V0S2V5SXRlbVN1cHBsaWVyAAAAAQAAAARpdGVtCQABLAAAAAIFAAAABGl0ZW0CAAAABl9vd25lcgEAAAAUZ2V0VmFsdWVJdGVtU3VwcGxpZXIAAAABAAAABGl0ZW0JAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAABJnZXRLZXlJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABAAAAB2FjY291bnQJAAEsAAAAAgUAAAAHYWNjb3VudAIAAAAIX2JhbGFuY2UBAAAAF2dldFZhbHVlQmFsYW5jZVN1cHBsaWVyAAAAAQAAAAdhY2NvdW50CQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAVZ2V0S2V5QmFsYW5jZVN1cHBsaWVyAAAAAQUAAAAHYWNjb3VudAEAAAAMZ2V0S2V5Q29tbWl0AAAAAgAAAARpdGVtAAAABHVzZXIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAABGl0ZW0CAAAAAV8FAAAABHVzZXICAAAAB19jb21taXQBAAAADmdldFZhbHVlQ29tbWl0AAAAAgAAAARpdGVtAAAABHVzZXIJAQAAAAtnZXRTdHJCeUtleQAAAAEJAQAAAAxnZXRLZXlDb21taXQAAAACBQAAAARpdGVtBQAAAAR1c2VyAQAAABJnZXRLZXlDb21taXRzQ291bnQAAAABAAAABGl0ZW0JAAEsAAAAAgUAAAAEaXRlbQIAAAAHX2NvbWN0bgEAAAAUZ2V0VmFsdWVDb21taXRzQ291bnQAAAABAAAABGl0ZW0JAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAABJnZXRLZXlDb21taXRzQ291bnQAAAABBQAAAARpdGVtAQAAAAxnZXRLZXlSZXZlYWwAAAACAAAABGl0ZW0AAAAEdXNlcgkAASwAAAACCQABLAAAAAIJAAEsAAAA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bm5vdCBiZSBsZXNzIHRoYW4gaXRlbSBwcmljZQMJAABmAAAAAggFAAAAA3BtdAAAAAZhbW91bnQFAAAABXByaWNlCQAAAgAAAAECAAAAMHB1cmNoYXNlIGFtb3VudCBjYW5ub3QgYmUgaGlnaGVyIHRoYW4gaXRlbSBwcmljZQMJAAAAAAAAAgUAAAAPc3VwcGxpZXJBZGRyZXNzBQAAAAROT05FCQAAAgAAAAECAAAAF3N1cHBsaWVyIGRvZXMgbm90IGV4aXN0CQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgUAAAALdXNlckFkZHJlc3MFAAAABGl0ZW0JAABkAAAAAgkBAAAAF2dldFZhbHVlVXNlckl0ZW1Db3VudGVyAAAAAgUAAAALdXNlckFkZHJlc3MFAAAABGl0ZW0AAAAAAAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABBQAAAA9zdXBwbGllckFkZHJlc3MJAABkAAAAAgkBAAAAF2dldFZhbHVlQmFsYW5jZVN1cHBsaWVyAAAAAQUAAAAPc3VwcGxpZXJBZGRyZXNzCAUAAAADcG10AAAABmFtb3VudAUAAAADbmlsAAAAAWkBAAAACnZvdGVDb21taXQAAAACAAAABGl0ZW0AAAAEaGFzaAQAAAAEdXNlcgkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAAdjb21taXRzCQEAAAAUZ2V0VmFsdWVDb21taXRzQ291bnQAAAABBQAAAARpdGVtBAAAAAZzdGF0dXMJAQAAABJnZXRWYWx1ZUl0ZW1TdGF0dXMAAAABBQAAAARpdGVtAwkAAGcAAAACBQAAAAdjb21taXRzBQAAAAZWT1RFUlMJAAACAAAAAQIAAAAZcmVhY2hlZCBtYXggbnVtIG9mIHZvdGVycwMJAQAAAAIhPQAAAAIJAQAAAA5nZXRWYWx1ZUNvbW1pdAAAAAIFAAAABGl0ZW0FAAAABHVzZXIFAAAABE5PTkUJAAACAAAAAQIAAAAddXNlciBoYXMgYWxyZWFkeSBwYXJ0aWNpcGF0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", "chainId": 84, "height": 772524, "spentComplexity": 0 } View: original | compacted Prev: J76qRnVGCXimGtgGBVQuUXw3h4DxWSod2yxTSD4ooGsA Next: 26zKzwstM2q3BhYthu29FLRk9CB1ToGU3jvwbFDAd6BR Diff:
OldNewDifferences
214214
215215
216216 @Callable(O)
217-func voteReveal (p,M,ac) = {
217+func voteReveal (p,M) = {
218218 let s = toBase58String(O.caller.bytes)
219219 let ab = K(p)
220- let ad = (N(p, M) + 1)
221- if ((toBase58String(sha256(toBytes((M + ac)))) != E(p, s)))
220+ let ac = (N(p, M) + 1)
221+ if ((M != E(p, s)))
222222 then throw("reveal data is not valid")
223223 else if ((b > G(p)))
224224 then throw("max num of voters hasn't reached yet")
236236 then true
237237 else (ab == g))
238238 then throw("vote has finished")
239- else WriteSet([DataEntry(H(p, s), M), DataEntry(L(p, M), ad), DataEntry(J(p), if ((ad >= c))
239+ else WriteSet([DataEntry(H(p, s), M), DataEntry(L(p, M), ac), DataEntry(J(p), if ((ac >= c))
240240 then M
241241 else e)])
242242 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "none"
55
66 let b = 3
77
88 let c = 2
99
1010 let d = "voting"
1111
1212 let e = "reveal"
1313
1414 let f = "featured"
1515
1616 let g = "delisted"
1717
1818 func h (i) = {
1919 let j = {
2020 let k = getInteger(this, i)
2121 if ($isInstanceOf(k, "Int"))
2222 then {
2323 let l = k
2424 l
2525 }
2626 else 0
2727 }
2828 j
2929 }
3030
3131
3232 func m (i) = {
3333 let n = {
3434 let k = getString(this, i)
3535 if ($isInstanceOf(k, "String"))
3636 then {
3737 let l = k
3838 l
3939 }
4040 else a
4141 }
4242 n
4343 }
4444
4545
4646 func o (p) = (p + "_price")
4747
4848
4949 func q (p) = h(o(p))
5050
5151
5252 func r (s,p) = (((p + "_") + s) + "_cnt")
5353
5454
5555 func t (s,p) = h(r(s, p))
5656
5757
5858 func u (v,w) = ("item_" + toBase58String(sha256(toBytes((v + w)))))
5959
6060
6161 func x (p) = (p + "_data")
6262
6363
6464 func y (p) = (p + "_owner")
6565
6666
6767 func z (p) = m(y(p))
6868
6969
7070 func A (B) = (B + "_balance")
7171
7272
7373 func C (B) = h(A(B))
7474
7575
7676 func D (p,s) = (((p + "_") + s) + "_commit")
7777
7878
7979 func E (p,s) = m(D(p, s))
8080
8181
8282 func F (p) = (p + "_comctn")
8383
8484
8585 func G (p) = h(F(p))
8686
8787
8888 func H (p,s) = (((p + "_") + s) + "_reveal")
8989
9090
9191 func I (p,s) = m(H(p, s))
9292
9393
9494 func J (p) = (p + "_status")
9595
9696
9797 func K (p) = m(J(p))
9898
9999
100100 func L (p,M) = ((p + "_res:") + M)
101101
102102
103103 func N (p,M) = h(L(p, M))
104104
105105
106106 @Callable(O)
107107 func deposit () = {
108108 let P = extract(O.payment)
109109 if (isDefined(P.assetId))
110110 then throw("can hold waves only at the moment")
111111 else {
112112 let Q = toBase58String(O.caller.bytes)
113113 let R = {
114114 let k = getInteger(this, Q)
115115 if ($isInstanceOf(k, "Int"))
116116 then {
117117 let l = k
118118 l
119119 }
120120 else 0
121121 }
122122 let S = {
123123 let k = getString(this, ("wl_sts_" + Q))
124124 if ($isInstanceOf(k, "String"))
125125 then {
126126 let l = k
127127 l
128128 }
129129 else throw("User has not been whitelisted")
130130 }
131131 let T = (R + P.amount)
132132 WriteSet([DataEntry(Q, T)])
133133 }
134134 }
135135
136136
137137
138138 @Callable(O)
139139 func withdraw (U) = {
140140 let Q = toBase58String(O.caller.bytes)
141141 let R = {
142142 let k = getInteger(this, Q)
143143 if ($isInstanceOf(k, "Int"))
144144 then {
145145 let l = k
146146 l
147147 }
148148 else 0
149149 }
150150 let T = (R - U)
151151 if ((0 > U))
152152 then throw("Can't withdraw negative amount")
153153 else if ((0 > T))
154154 then throw("Not enough balance")
155155 else ScriptResult(WriteSet([DataEntry(Q, T)]), TransferSet([ScriptTransfer(O.caller, U, unit)]))
156156 }
157157
158158
159159
160160 @Callable(O)
161161 func addItem (w,V,W) = {
162162 let X = toBase58String(O.caller.bytes)
163163 let p = u(X, w)
164164 if ((0 >= V))
165165 then throw("purchase amount cannot be less than item price")
166166 else if ((z(p) != a))
167167 then throw("an item is already exist")
168168 else WriteSet([DataEntry(y(p), X), DataEntry(o(p), V), DataEntry(x(p), W)])
169169 }
170170
171171
172172
173173 @Callable(O)
174174 func purchase (p) = {
175175 let P = extract(O.payment)
176176 if (isDefined(P.assetId))
177177 then throw("WAVES tokens only at the moment")
178178 else {
179179 let Y = toBase58String(O.caller.bytes)
180180 let V = q(p)
181181 let X = z(p)
182182 if ((V > P.amount))
183183 then throw("purchase amount cannot be less than item price")
184184 else if ((P.amount > V))
185185 then throw("purchase amount cannot be higher than item price")
186186 else if ((X == a))
187187 then throw("supplier does not exist")
188188 else WriteSet([DataEntry(r(Y, p), (t(Y, p) + 1)), DataEntry(A(X), (C(X) + P.amount))])
189189 }
190190 }
191191
192192
193193
194194 @Callable(O)
195195 func voteCommit (p,Z) = {
196196 let s = toBase58String(O.caller.bytes)
197197 let aa = G(p)
198198 let ab = K(p)
199199 if ((aa >= b))
200200 then throw("reached max num of voters")
201201 else if ((E(p, s) != a))
202202 then throw("user has already participated")
203203 else if ((y(p) == a))
204204 then throw("item does not exist")
205205 else if (if ((ab != a))
206206 then (ab != d)
207207 else false)
208208 then throw("voting is not possible")
209209 else WriteSet([DataEntry(D(p, s), Z), DataEntry(F(p), (aa + 1)), DataEntry(J(p), if ((aa == b))
210210 then e
211211 else d)])
212212 }
213213
214214
215215
216216 @Callable(O)
217-func voteReveal (p,M,ac) = {
217+func voteReveal (p,M) = {
218218 let s = toBase58String(O.caller.bytes)
219219 let ab = K(p)
220- let ad = (N(p, M) + 1)
221- if ((toBase58String(sha256(toBytes((M + ac)))) != E(p, s)))
220+ let ac = (N(p, M) + 1)
221+ if ((M != E(p, s)))
222222 then throw("reveal data is not valid")
223223 else if ((b > G(p)))
224224 then throw("max num of voters hasn't reached yet")
225225 else if ((I(p, s) != a))
226226 then throw("user has already participated")
227227 else if (if ((ab != d))
228228 then (ab != e)
229229 else false)
230230 then throw("wrong status")
231231 else if (if ((M != f))
232232 then (M != g)
233233 else false)
234234 then throw("wrong vote")
235235 else if (if ((ab == f))
236236 then true
237237 else (ab == g))
238238 then throw("vote has finished")
239- else WriteSet([DataEntry(H(p, s), M), DataEntry(L(p, M), ad), DataEntry(J(p), if ((ad >= c))
239+ else WriteSet([DataEntry(H(p, s), M), DataEntry(L(p, M), ac), DataEntry(J(p), if ((ac >= c))
240240 then M
241241 else e)])
242242 }
243243
244244

github/deemru/w8io/873ac7e 
42.72 ms