tx · 7DPVu2h7cVFEyCPCPQtLkSks27xqdj7UkWfXrf6dBCwL

3MovmZoJtqutkf49oGXHzABSMUQ7HU5Dcg7:  -0.01400000 Waves

2021.07.31 20:58 [1638139] smart account 3MovmZoJtqutkf49oGXHzABSMUQ7HU5Dcg7 > SELF 0.00000000 Waves

{ "type": 13, "id": "7DPVu2h7cVFEyCPCPQtLkSks27xqdj7UkWfXrf6dBCwL", "fee": 1400000, "feeAssetId": null, "timestamp": 1627754323781, "version": 2, "chainId": 84, "sender": "3MovmZoJtqutkf49oGXHzABSMUQ7HU5Dcg7", "senderPublicKey": "3tp5fNYyPi4jMnkf6s1k4kBqvJ7nm57SxzvLyi8RkxT2", "proofs": [ "4h2Mc9MfMfGLSBVJpJpHDdy7GNKQhuToZRE8WM26Q31UThVRvGkdB7LVFXT5kfmeXmLSJdp9vBbU1o4mnCH8qR9e" ], "script": "base64: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B2FjY291bnQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAASc3VwcGxpZXJCYWxhbmNlS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAABAAAAF2dldFZhbHVlVXNlckl0ZW1Db3VudGVyAAAAAgAAAAR1c2VyAAAABGl0ZW0EAAAAEnVzZXJJdGVtQ291bnRlcktleQkBAAAAFWdldEtleVVzZXJJdGVtQ291bnRlcgAAAAIFAAAABHVzZXIFAAAABGl0ZW0EAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAASdXNlckl0ZW1Db3VudGVyS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAABAAAAEWdldFZhbHVlSXRlbVByaWNlAAAAAQAAAARpdGVtBAAAAAxrZXlJdGVtUHJpY2UJAQAAAA9nZXRLZXlJdGVtUHJpY2UAAAABBQAAAARpdGVtCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzBQAAAAxrZXlJdGVtUHJpY2UBAAAAFGdldFZhbHVlSXRlbVN1cHBsaWVyAAAAAQAAAARpdGVtCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAASZ2V0S2V5SXRlbVN1cHBsaWVyAAAAAQUAAAAEaXRlbQEAAAAWZ2V0VmFsdWVJdGVtRXhwaXJlVGltZQAAAAEAAAAEaXRlbQkBAAAAD2dldEludGVnZXJCeUtleQAAAAEJAQAAABRnZXRLZXlJdGVtRXhwaXJlRGF0ZQAAAAEFAAAABGl0ZW0BAAAADmdldFZhbHVlQ29tbWl0AAAAAgAAAARpdGVtAAAABHVzZXIJAQAAAA5nZXRTdHJpbmdCeUtleQAAAAEJAQAAAAxnZXRLZXlDb21taXQAAAACBQAAAARpdGVtBQAAAAR1c2VyAQAAABRnZXRWYWx1ZUNvbW1pdHNDb3VudAAAAAEAAAAEaXRlbQkBAAAAD2dldEludGVnZXJCeUtleQAAAAEJAQAAABJnZXRLZXlDb21taXRzQ291bnQAAAABBQAAAARpdGVtAQAAAA5nZXRWYWx1ZVJldmVhbAAAAAIAAAAEaXRlbQAAAAR1c2VyCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAMZ2V0S2V5UmV2ZWFsAAAAAgUAAAAEaXRlbQUAAAAEdXNlcgEAAAASZ2V0VmFsdWVJdGVtU3RhdHVzAAAAAQAAAARpdGVtCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAQZ2V0S2V5SXRlbVN0YXR1cwAAAAEFAAAABGl0ZW0BAAAAEmdldFZhbHVlVm90ZXNDb3VudAAAAAIAAAAEaXRlbQAAAAR2b3RlCQEAAAAPZ2V0SW50ZWdlckJ5S2V5AAAAAQkBAAAAEGdldEtleVZvdGVzQ291bnQAAAACBQAAAARpdGVtBQAAAAR2b3RlAAAABwAAAAFpAQAAABByZWdpc3RlclN1cHBsaWVyAAAAAQAAAARkYXRhBAAAAAhzdXBwbGllcgkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAAdhY2NvdW50CQEAAAASZ2V0U3VwcGxpZXJBY2NvdW50AAAAAQUAAAAIc3VwcGxpZXIDCQEAAAACIT0AAAACBQAAAAdhY2NvdW50BQAAAAROT05FCQAAAgAAAAECAAAALlRoaXMgYWRkcmVzcyBoYXMgYWxyZWFkeSByZWdpc3RyZWQgYXMgc3VwcGxpZXIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAFWdldEtleVN1cHBsaWVyQWNjb3VudAAAAAEFAAAACHN1cHBsaWVyBQAAAARkYXRhBQAAAANuaWwAAAABaQEAAAAHYWRkSXRlbQAAAAQAAAAFdGl0bGUAAAAFcHJpY2UAAAAEZGF0YQAAAAZleHBpcmUEAAAACHN1cHBsaWVyCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAB2FjY291bnQJAQAAABJnZXRTdXBwbGllckFjY291bnQAAAABBQAAAAhzdXBwbGllcgQAAAAEaXRlbQkBAAAACmdldEtleUl0ZW0AAAACBQAAAAhzdXBwbGllcgUAAAAFdGl0bGUDCQAAAAAAAAIFAAAAB2FjY291bnQFAAAABE5PTkUJAAACAAAAAQIAAAAuWW91IHNob3VsZCByZWdp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Y2UIBQAAAANwbXQAAAAGYW1vdW50CQAAAgAAAAECAAAALlB1cmNoYXNlIGFtb3VudCBjYW5ub3QgYmUgbGVzcyB0aGFuIGl0ZW0gcHJpY2UDCQAAZgAAAAIIBQAAAANwbXQAAAAGYW1vdW50BQAAAAVwcmljZQkAAAIAAAABAgAAADBQdXJjaGFzZSBhbW91bnQgY2Fubm90IGJlIGhpZ2hlciB0aGFuIGl0ZW0gcHJpY2UDCQAAAAAAAAIFAAAACHN1cHBsaWVyBQAAAAROT05FCQAAAgAAAAECAAAAGFN1cHBsaWVyIGRvZXMgbm90IGV4aXN0cwQAAAAPdXNlckl0ZW1Db3VudGVyCQEAAAAVZ2V0S2V5VXNlckl0ZW1Db3VudGVyAAAAAgUAAAALdXNlckFkZHJlc3MFAAAABGl0ZW0EAAAAF25ld1ZhbHVlVXNlckl0ZW1Db3VudGVyCQAAZAAAAAIJAQAAABdnZXRWYWx1ZVVzZXJJdGVtQ291bnRlcgAAAAIFAAAAC3VzZXJBZGRyZXNzBQAAAARpdGVtAAAAAAAAAAABBAAAABJzdXBwbGllckJhbGFuY2VLZXkJAQAAABVnZXRLZXlCYWxhbmNlU3VwcGxpZXIAAAABBQAAAAhzdXBwbGllcgQAAAASbmV3U3VwcGxpZXJCYWxhbmNlCQAAZAAAAAIJAQAAABdnZXRWYWx1ZUJhbGFuY2VTdXBwbGllcgAAAAEFAAAACHN1cHBsaWVyCAUAAAADcG10AAAABmFtb3VudAQAAAAFYXNzZXQJAARDAAAABwIAAAAFQXNzZXQCAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAYFAAAABHVuaXQAAAAAAAAAAAAEAAAAB2Fzc2V0SWQJAAQ4AAAAAQUAAAAFYXNzZXQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAD3VzZXJJdGVtQ291bnRlcgUAAAAXbmV3VmFsdWVVc2VySXRlbUNvdW50ZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEnN1cHBsaWVyQmFsYW5jZUtleQUAAAASbmV3U3VwcGxpZXJCYWxhbmNlBQAAAANuaWwAAAABaQEAAAAKdm90ZUNvbW1pdAAAAAIAAAAEaXRlbQAAAARoYXNoBAAAAAR1c2Vy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", "height": 1638139, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2iKmC1AfjngVF8QJ47GNYUANHmyPyTzSRJfLyV2Rp6ny Next: GCnnXXJq4X5TxtNiDpSvcLiEzb8g4Z43fk7g3MghnpFB Diff:
OldNewDifferences
198198 @Callable(V)
199199 func purchase (u) = {
200200 let aa = V.payments[0]
201- if (isDefined(aa.assetId))
202- then throw("You can buy tokens only with Waves tokens")
203- else {
204- let ab = toBase58String(V.caller.bytes)
205- let X = M(u)
206- if ((1 == 1))
207- then throw(("price -> " + toString(X)))
208- else {
209- let q = O(u)
210- let Y = P(u)
211- if (if ((Y > 0))
212- then (lastBlock.timestamp >= Y)
213- else false)
214- then throw("Coupon expired")
215- else if ((X > aa.amount))
216- then throw("Purchase amount cannot be less than item price")
217- else if ((aa.amount > X))
218- then throw("Purchase amount cannot be higher than item price")
219- else if ((q == a))
220- then throw("Supplier does not exists")
221- else {
222- let ac = G(ab, u)
223- let ad = (K(ab, u) + 1)
224- let J = H(q)
225- let ae = (I(q) + aa.amount)
226- let af = Issue("Asset", "", 1, 0, true, unit, 0)
227- let ag = calculateAssetId(af)
201+ if ((1 == 1))
202+ then throw("error error error")
203+ else if (isDefined(aa.assetId))
204+ then throw("You can buy tokens only with Waves tokens")
205+ else {
206+ let ab = toBase58String(V.caller.bytes)
207+ let X = M(u)
208+ if ((1 == 1))
209+ then throw(("price -> " + toString(X)))
210+ else {
211+ let q = O(u)
212+ let Y = P(u)
213+ if (if ((Y > 0))
214+ then (lastBlock.timestamp >= Y)
215+ else false)
216+ then throw("Coupon expired")
217+ else if ((X > aa.amount))
218+ then throw("Purchase amount cannot be less than item price")
219+ else if ((aa.amount > X))
220+ then throw("Purchase amount cannot be higher than item price")
221+ else if ((q == a))
222+ then throw("Supplier does not exists")
223+ else {
224+ let ac = G(ab, u)
225+ let ad = (K(ab, u) + 1)
226+ let J = H(q)
227+ let ae = (I(q) + aa.amount)
228+ let af = Issue("Asset", "", 1, 0, true, unit, 0)
229+ let ag = calculateAssetId(af)
228230 [IntegerEntry(ac, ad), IntegerEntry(J, ae)]
229- }
230- }
231- }
231+ }
232+ }
233+ }
232234 }
233235
234236
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
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 = "featured"
1111
1212 let e = "delisted"
1313
1414 let f = "voting"
1515
1616 let g = "reveal"
1717
1818 func h (i) = {
1919 let j = getString(this, i)
2020 if ($isInstanceOf(j, "String"))
2121 then {
2222 let k = j
2323 k
2424 }
2525 else a
2626 }
2727
2828
2929 func l (i) = {
3030 let j = getInteger(this, i)
3131 if ($isInstanceOf(j, "Int"))
3232 then {
3333 let k = j
3434 k
3535 }
3636 else 0
3737 }
3838
3939
4040 func m (n) = (n + "_account")
4141
4242
4343 func o (n) = h(m(n))
4444
4545
4646 func p (q,r) = {
4747 let s = (q + r)
4848 ("item_" + toBase58String(sha256(toBytes(s))))
4949 }
5050
5151
5252 func t (u) = (u + "_owner")
5353
5454
5555 func v (u) = (u + "_title")
5656
5757
5858 func w (u) = (u + "_price")
5959
6060
6161 func x (u) = (u + "_data")
6262
6363
6464 func y (u) = (u + "_expiredate")
6565
6666
6767 func z (u,A) = (((u + "_") + A) + "_commit")
6868
6969
7070 func B (u) = (u + "_cmtcnt")
7171
7272
7373 func C (u,A) = (((u + "_") + A) + "_reveal")
7474
7575
7676 func D (u) = (u + "_status")
7777
7878
7979 func E (u,F) = ((u + "_res:") + F)
8080
8181
8282 func G (A,u) = (((u + "_") + A) + "_cnt")
8383
8484
8585 func H (n) = (n + "_balance")
8686
8787
8888 func I (n) = {
8989 let J = H(n)
9090 let j = getInteger(this, J)
9191 if ($isInstanceOf(j, "Int"))
9292 then {
9393 let k = j
9494 k
9595 }
9696 else 0
9797 }
9898
9999
100100 func K (A,u) = {
101101 let L = G(A, u)
102102 let j = getInteger(this, L)
103103 if ($isInstanceOf(j, "Int"))
104104 then {
105105 let k = j
106106 k
107107 }
108108 else 0
109109 }
110110
111111
112112 func M (u) = {
113113 let N = w(u)
114114 getIntegerValue(this, N)
115115 }
116116
117117
118118 func O (u) = h(t(u))
119119
120120
121121 func P (u) = l(y(u))
122122
123123
124124 func Q (u,A) = h(z(u, A))
125125
126126
127127 func R (u) = l(B(u))
128128
129129
130130 func S (u,A) = h(C(u, A))
131131
132132
133133 func T (u) = h(D(u))
134134
135135
136136 func U (u,F) = l(E(u, F))
137137
138138
139139 @Callable(V)
140140 func registerSupplier (W) = {
141141 let q = toBase58String(V.caller.bytes)
142142 let n = o(q)
143143 if ((n != a))
144144 then throw("This address has already registred as supplier")
145145 else [StringEntry(m(q), W)]
146146 }
147147
148148
149149
150150 @Callable(V)
151151 func addItem (r,X,W,Y) = {
152152 let q = toBase58String(V.caller.bytes)
153153 let n = o(q)
154154 let u = p(q, r)
155155 if ((n == a))
156156 then throw("You should register as supplier to add an item")
157157 else if ((0 >= X))
158158 then throw("Purchase amount cannot be less than item price")
159159 else if ((O(u) != a))
160160 then throw("An item already exists")
161161 else [StringEntry(t(u), q), StringEntry(v(u), r), IntegerEntry(w(u), X), StringEntry(x(u), W), IntegerEntry(y(u), Y)]
162162 }
163163
164164
165165
166166 @Callable(V)
167167 func updateItem (u,r,X,W,Y) = {
168168 let q = toBase58String(V.caller.bytes)
169169 let n = o(q)
170170 let Z = O(u)
171171 if ((n == a))
172172 then throw("You should register as supplier to remove an item")
173173 else if (if ((u == a))
174174 then true
175175 else (q != Z))
176176 then throw(("You don't owned item " + u))
177177 else [StringEntry(v(u), r), IntegerEntry(w(u), X), StringEntry(x(u), W), IntegerEntry(y(u), Y)]
178178 }
179179
180180
181181
182182 @Callable(V)
183183 func removeItem (u) = {
184184 let q = toBase58String(V.caller.bytes)
185185 let n = o(q)
186186 let Z = O(u)
187187 if ((n == a))
188188 then throw("You should register as supplier to remove an item")
189189 else if (if ((u == a))
190190 then true
191191 else (q != Z))
192192 then throw(("You don't owned item " + u))
193193 else [DeleteEntry(t(u)), DeleteEntry(v(u)), DeleteEntry(w(u)), DeleteEntry(x(u)), DeleteEntry(y(u))]
194194 }
195195
196196
197197
198198 @Callable(V)
199199 func purchase (u) = {
200200 let aa = V.payments[0]
201- if (isDefined(aa.assetId))
202- then throw("You can buy tokens only with Waves tokens")
203- else {
204- let ab = toBase58String(V.caller.bytes)
205- let X = M(u)
206- if ((1 == 1))
207- then throw(("price -> " + toString(X)))
208- else {
209- let q = O(u)
210- let Y = P(u)
211- if (if ((Y > 0))
212- then (lastBlock.timestamp >= Y)
213- else false)
214- then throw("Coupon expired")
215- else if ((X > aa.amount))
216- then throw("Purchase amount cannot be less than item price")
217- else if ((aa.amount > X))
218- then throw("Purchase amount cannot be higher than item price")
219- else if ((q == a))
220- then throw("Supplier does not exists")
221- else {
222- let ac = G(ab, u)
223- let ad = (K(ab, u) + 1)
224- let J = H(q)
225- let ae = (I(q) + aa.amount)
226- let af = Issue("Asset", "", 1, 0, true, unit, 0)
227- let ag = calculateAssetId(af)
201+ if ((1 == 1))
202+ then throw("error error error")
203+ else if (isDefined(aa.assetId))
204+ then throw("You can buy tokens only with Waves tokens")
205+ else {
206+ let ab = toBase58String(V.caller.bytes)
207+ let X = M(u)
208+ if ((1 == 1))
209+ then throw(("price -> " + toString(X)))
210+ else {
211+ let q = O(u)
212+ let Y = P(u)
213+ if (if ((Y > 0))
214+ then (lastBlock.timestamp >= Y)
215+ else false)
216+ then throw("Coupon expired")
217+ else if ((X > aa.amount))
218+ then throw("Purchase amount cannot be less than item price")
219+ else if ((aa.amount > X))
220+ then throw("Purchase amount cannot be higher than item price")
221+ else if ((q == a))
222+ then throw("Supplier does not exists")
223+ else {
224+ let ac = G(ab, u)
225+ let ad = (K(ab, u) + 1)
226+ let J = H(q)
227+ let ae = (I(q) + aa.amount)
228+ let af = Issue("Asset", "", 1, 0, true, unit, 0)
229+ let ag = calculateAssetId(af)
228230 [IntegerEntry(ac, ad), IntegerEntry(J, ae)]
229- }
230- }
231- }
231+ }
232+ }
233+ }
232234 }
233235
234236
235237
236238 @Callable(V)
237239 func voteCommit (u,ah) = {
238240 let A = toBase58String(V.caller.bytes)
239241 let ai = R(u)
240242 let aj = T(u)
241243 if ((ai >= b))
242244 then throw("Reached max number of voters")
243245 else if ((Q(u, A) != a))
244246 then throw("You voted already")
245247 else if ((t(u) == a))
246248 then throw("Item does not exists")
247249 else if (if ((aj != a))
248250 then (aj != f)
249251 else false)
250252 then throw("Voting is not active for this item now")
251253 else {
252254 let ak = if ((ai == b))
253255 then g
254256 else f
255257 [StringEntry(z(u, A), ah), IntegerEntry(B(u), (ai + 1)), StringEntry(D(u), ak)]
256258 }
257259 }
258260
259261
260262
261263 @Callable(V)
262264 func voteReveal (u,F,al) = {
263265 let A = toBase58String(V.caller.bytes)
264266 let aj = T(u)
265267 let am = (U(u, F) + 1)
266268 let an = toBase58String(sha256(toBytes(((u + F) + al))))
267269 if ((an != Q(u, A)))
268270 then throw("Reveal data is not valid")
269271 else if ((b > R(u)))
270272 then throw("Max number of voters not reached")
271273 else if ((S(u, A) != a))
272274 then throw("You voted already")
273275 else if (if ((aj != f))
274276 then (aj != g)
275277 else false)
276278 then throw("Voting is not active for this item now")
277279 else if (if ((F != d))
278280 then (F != e)
279281 else false)
280282 then throw("Provided voting option is incorrect")
281283 else {
282284 let ak = if ((am >= c))
283285 then F
284286 else g
285287 [StringEntry(C(u, A), F), IntegerEntry(E(u, A), am), StringEntry(D(u), ak)]
286288 }
287289 }
288290
289291
290292 @Verifier(ao)
291293 func ap () = {
292294 let j = ao
293295 if ($isInstanceOf(j, "SetScriptTransaction"))
294296 then {
295297 let aq = j
296298 sigVerify(ao.bodyBytes, ao.proofs[0], ao.senderPublicKey)
297299 }
298300 else false
299301 }
300302

github/deemru/w8io/169f3d6 
49.30 ms