tx · 8Q6qQTJxNYGn4KqABFLK8pBB3RyJUVckeA74sKvQzFWa

3N8X6wT7GZLavL2ayUQzwRD2kRFRSDyhkKS:  -0.01000000 Waves

2021.07.09 11:15 [1605823] smart account 3N8X6wT7GZLavL2ayUQzwRD2kRFRSDyhkKS > SELF 0.00000000 Waves

{ "type": 13, "id": "8Q6qQTJxNYGn4KqABFLK8pBB3RyJUVckeA74sKvQzFWa", "fee": 1000000, "feeAssetId": null, "timestamp": 1625818540847, "version": 2, "chainId": 84, "sender": "3N8X6wT7GZLavL2ayUQzwRD2kRFRSDyhkKS", "senderPublicKey": "7DT6yPGiY3eZiSytDKBx5ToZcjhem3SyxdX6Zz9fsMED", "proofs": [ "2jafkQLfLy5RmMF8ySkBv8z8KKQBLpPyQVXVnBzYsXdbzF28izWWw7qhTFKDuRmUWLKZPGzhafLTMah3svW3MxfL" ], "script": "base64:AAIFAAAAAAAABHMIAhIFCgMIAQgSAwoBCBIAEgQKAggIEgUKAwgICBoKCgJhMRIETk9ORRoUCgJhMhIOZ2V0TnVtYmVyQnlLZXkaCQoCYTMSA2tleRoJCgJhNBIDbnVtGg0KAmE1EgckbWF0Y2gwGgcKAmE2EgFhGhEKAmE3EgtnZXRTdHJCeUtleRoJCgJhOBIDc3RyGhUKAmE5Eg9nZXRLZXlJdGVtUHJpY2UaCgoCYjESBGl0ZW0aFwoCYjISEWdldFZhbHVlSXRlbVByaWNlGhsKAmIzEhVnZXRLZXlVc2VySXRlbUNvdW50ZXIaCgoCYjQSBHVzZXIaHQoCYjUSF2dldFZhbHVlVXNlckl0ZW1Db3VudGVyGhAKAmI2EgpnZXRLZXlJdGVtGg4KAmI3EghzdXBwbGllchoLCgJiOBIFdGl0bGUaFAoCYjkSDmdldEtleUl0ZW1EYXRhGhgKAmMxEhJnZXRLZXlJdGVtU3VwcGxpZXIaGgoCYzISFGdldFZhbHVlSXRlbVN1cHBsaWVyGhsKAmMzEhVnZXRLZXlCYWxhbmNlU3VwcGxpZXIaDQoCYzQSB2FjY291bnQaHQoCYzUSF2dldFZhbHVlQmFsYW5jZVN1cHBsaWVyGgwKAmM2EgZWT1RFUlMaDAoCYzcSBlFVT1JVTRoMCgJjOBIGVk9USU5HGgwKAmM5EgZSRVZFQUwaDgoCZDESCEZFQVRVUkVEGg4KAmQyEghERUxJU1RFRBoSCgJkMxIMZ2V0S2V5Q29tbWl0GhQKAmQ0Eg5nZXRWYWx1ZUNvbW1pdBoYCgJkNRISZ2V0S2V5Q29tbWl0c0NvdW50GhoKAmQ2EhRnZXRWYWx1ZUNvbW1pdHNDb3VudBoSCgJkNxIMZ2V0S2V5UmV2ZWFsGhQKAmQ4Eg5nZXRWYWx1ZVJldmVhbBoWCgJkORIQZ2V0S2V5SXRlbVN0YXR1cxoYCgJlMRISZ2V0VmFsdWVJdGVtU3RhdHVzGhUKAmUyEg9nZXRLZXlWb3RlQ291bnQaCgoCZTMSBHZvdGUaFwoCZTQSEWdldFZhbHVlVm90ZUNvdW50GhkKAmU1EhNnZXRFeHRBZGRyZXNzT3JhY2xlGhEKAmU2EgtCTEFDS0xJU1RFRBoiCgJlNxIcZ2V0RXh0S2V5SXRlbVdoaXRlTGlzdFN0YXR1cxok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", "height": 1605823, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: JCKsBDCyJt26BcjcicX2qTzRSaMoTLEDc2oDj4vn9iyN Next: 4xXcqbMedyXKeU6emzZNDwysCqiyTFpmqVG1ysNrxSzm Diff:
OldNewDifferences
106106 func O () = value(addressFromString("3MsbiyFyy8B3aN3kF8ntda474SPn4YMVkiq"))
107107
108108
109-func P (v) = (v + "_verifier_status")
109+let P = "blacklist"
110+
111+func Q (v) = (v + "_verifier_status")
110112
111113
112-func Q (R,v) = {
114+func R (S,v) = {
113115 let h = {
114- let e = getString(R, P(v))
116+ let e = getString(S, Q(v))
115117 if ($isInstanceOf(e, "String"))
116118 then {
117119 let f = e
123125 }
124126
125127
126-@Callable(S)
127-func addItem (q,T,U) = {
128- let V = toBase58String(S.caller.bytes)
129- let j = o(V, q)
130- let W = Q(O(), V)
131- if ((0 >= T))
128+@Callable(T)
129+func addItem (q,U,V) = {
130+ let W = toBase58String(T.caller.bytes)
131+ let j = o(W, q)
132+ let X = R(O(), W)
133+ if ((0 >= U))
132134 then throw("Purchase amount cannot be less than item price")
133135 else if ((t(j) != a))
134136 then throw("an item already exists")
135- else [StringEntry(s(j), V), IntegerEntry(i(j), T), StringEntry(r(j), U)]
137+ else if ((X == P))
138+ then throw("supplier's account has been blacklisted")
139+ else [StringEntry(s(j), W), IntegerEntry(i(j), U), StringEntry(r(j), V), StringEntry(Q(W), X)]
136140 }
137141
138142
139143
140-@Callable(S)
144+@Callable(T)
141145 func purchase (j) = {
142- let X = S.payments[0]
143- if (isDefined(X.assetId))
146+ let Y = T.payments[0]
147+ if (isDefined(Y.assetId))
144148 then throw("WAVES ONLY HHEUAWHEUAS")
145149 else {
146- let Y = toBase58String(S.caller.bytes)
147- let T = k(j)
148- let V = t(j)
149- if ((T > X.amount))
150+ let Z = toBase58String(T.caller.bytes)
151+ let U = k(j)
152+ let W = t(j)
153+ if ((U > Y.amount))
150154 then throw("Purchase amount cannot be less than item price")
151- else if ((V == a))
155+ else if ((W == a))
152156 then throw("Supplier does not exist")
153- else [IntegerEntry(l(Y, j), (n(Y, j) + 1)), IntegerEntry(u(V), (w(V) + X.amount))]
157+ else [IntegerEntry(l(Z, j), (n(Z, j) + 1)), IntegerEntry(u(W), (w(W) + Y.amount))]
154158 }
155159 }
156160
157161
158162
159-@Callable(S)
163+@Callable(T)
160164 func withdraw () = {
161- let V = toBase58String(S.caller.bytes)
162- let Z = w(V)
163- if ((0 >= Z))
165+ let W = toBase58String(T.caller.bytes)
166+ let aa = w(W)
167+ if ((0 >= aa))
164168 then throw("insuficient balance")
165- else [IntegerEntry(u(V), 0), ScriptTransfer(addressFromStringValue(V), Z, unit)]
169+ else [IntegerEntry(u(W), 0), ScriptTransfer(addressFromStringValue(W), aa, unit)]
166170 }
167171
168172
169173
170-@Callable(S)
171-func voteCommit (j,aa) = {
172- let m = toBase58String(S.caller.bytes)
173- let ab = G(j)
174- let ac = K(j)
175- if ((ab >= x))
174+@Callable(T)
175+func voteCommit (j,ab) = {
176+ let m = toBase58String(T.caller.bytes)
177+ let ac = G(j)
178+ let ad = K(j)
179+ if ((ac >= x))
176180 then throw("Reached max num of voters")
177181 else if ((E(j, m) != a))
178182 then throw("b1")
179183 else if ((s(j) == a))
180184 then throw("b2")
181- else if (if ((ac != a))
182- then (ac != z)
185+ else if (if ((ad != a))
186+ then (ad != z)
183187 else false)
184188 then throw("b3")
185- else [StringEntry(D(j, m), aa), IntegerEntry(F(j), (ab + 1)), StringEntry(J(j), if ((ab == x))
189+ else [StringEntry(D(j, m), ab), IntegerEntry(F(j), (ac + 1)), StringEntry(J(j), if ((ac == x))
186190 then A
187191 else z)]
188192 }
189193
190194
191195
192-@Callable(S)
193-func voteReveal (j,M,ad) = {
194- let m = toBase58String(S.caller.bytes)
195- let ac = K(j)
196- let ae = (N(j, M) + 1)
197- if ((toBase58String(sha256(toBytes((M + ad)))) != E(j, m)))
196+@Callable(T)
197+func voteReveal (j,M,ae) = {
198+ let m = toBase58String(T.caller.bytes)
199+ let ad = K(j)
200+ let af = (N(j, M) + 1)
201+ if ((toBase58String(sha256(toBytes((M + ae)))) != E(j, m)))
198202 then throw("Reveal data is not valid")
199203 else if ((x > G(j)))
200204 then throw("max num of voters hasnt reached yet")
201205 else if ((I(j, m) != a))
202206 then throw("user has already participated")
203- else if (if ((ac != z))
204- then (ac != A)
207+ else if (if ((ad != z))
208+ then (ad != A)
205209 else false)
206210 then throw("wrong status")
207211 else if (if ((M != B))
208212 then (M != C)
209213 else false)
210214 then throw("wrong vote")
211- else if (if ((ac == B))
215+ else if (if ((ad == B))
212216 then true
213- else (ac == C))
217+ else (ad == C))
214218 then throw("vote has finished")
215- else [StringEntry(H(j, m), M), IntegerEntry(L(j, M), ae), StringEntry(J(j), if ((ae >= y))
219+ else [StringEntry(H(j, m), M), IntegerEntry(L(j, M), af), StringEntry(J(j), if ((af >= y))
216220 then M
217221 else A)]
218222 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "none"
55
66 func b (c) = {
77 let d = {
88 let e = getInteger(this, c)
99 if ($isInstanceOf(e, "Int"))
1010 then {
1111 let f = e
1212 f
1313 }
1414 else 0
1515 }
1616 d
1717 }
1818
1919
2020 func g (c) = {
2121 let h = {
2222 let e = getString(this, c)
2323 if ($isInstanceOf(e, "String"))
2424 then {
2525 let f = e
2626 f
2727 }
2828 else a
2929 }
3030 h
3131 }
3232
3333
3434 func i (j) = (j + "_price")
3535
3636
3737 func k (j) = b(i(j))
3838
3939
4040 func l (m,j) = (((j + "_") + m) + "_cnt")
4141
4242
4343 func n (m,j) = b(l(m, j))
4444
4545
4646 func o (p,q) = ("item_" + toBase58String(sha256(toBytes((p + q)))))
4747
4848
4949 func r (j) = (j + "_data")
5050
5151
5252 func s (j) = (j + "_owner")
5353
5454
5555 func t (j) = g(s(j))
5656
5757
5858 func u (v) = (v + "_balance")
5959
6060
6161 func w (v) = b(u(v))
6262
6363
6464 let x = 3
6565
6666 let y = 2
6767
6868 let z = "voting"
6969
7070 let A = "reveal"
7171
7272 let B = "featured"
7373
7474 let C = "delisted"
7575
7676 func D (j,m) = (((j + "_") + m) + "_commit")
7777
7878
7979 func E (j,m) = g(D(j, m))
8080
8181
8282 func F (j) = (j + "_comcnt")
8383
8484
8585 func G (j) = b(F(j))
8686
8787
8888 func H (j,m) = (((j + "_") + m) + "_reveal")
8989
9090
9191 func I (j,m) = g(H(j, m))
9292
9393
9494 func J (j) = (j + "_status")
9595
9696
9797 func K (j) = g(J(j))
9898
9999
100100 func L (j,M) = ((j + "_res:") + M)
101101
102102
103103 func N (j,M) = b(L(j, M))
104104
105105
106106 func O () = value(addressFromString("3MsbiyFyy8B3aN3kF8ntda474SPn4YMVkiq"))
107107
108108
109-func P (v) = (v + "_verifier_status")
109+let P = "blacklist"
110+
111+func Q (v) = (v + "_verifier_status")
110112
111113
112-func Q (R,v) = {
114+func R (S,v) = {
113115 let h = {
114- let e = getString(R, P(v))
116+ let e = getString(S, Q(v))
115117 if ($isInstanceOf(e, "String"))
116118 then {
117119 let f = e
118120 f
119121 }
120122 else a
121123 }
122124 h
123125 }
124126
125127
126-@Callable(S)
127-func addItem (q,T,U) = {
128- let V = toBase58String(S.caller.bytes)
129- let j = o(V, q)
130- let W = Q(O(), V)
131- if ((0 >= T))
128+@Callable(T)
129+func addItem (q,U,V) = {
130+ let W = toBase58String(T.caller.bytes)
131+ let j = o(W, q)
132+ let X = R(O(), W)
133+ if ((0 >= U))
132134 then throw("Purchase amount cannot be less than item price")
133135 else if ((t(j) != a))
134136 then throw("an item already exists")
135- else [StringEntry(s(j), V), IntegerEntry(i(j), T), StringEntry(r(j), U)]
137+ else if ((X == P))
138+ then throw("supplier's account has been blacklisted")
139+ else [StringEntry(s(j), W), IntegerEntry(i(j), U), StringEntry(r(j), V), StringEntry(Q(W), X)]
136140 }
137141
138142
139143
140-@Callable(S)
144+@Callable(T)
141145 func purchase (j) = {
142- let X = S.payments[0]
143- if (isDefined(X.assetId))
146+ let Y = T.payments[0]
147+ if (isDefined(Y.assetId))
144148 then throw("WAVES ONLY HHEUAWHEUAS")
145149 else {
146- let Y = toBase58String(S.caller.bytes)
147- let T = k(j)
148- let V = t(j)
149- if ((T > X.amount))
150+ let Z = toBase58String(T.caller.bytes)
151+ let U = k(j)
152+ let W = t(j)
153+ if ((U > Y.amount))
150154 then throw("Purchase amount cannot be less than item price")
151- else if ((V == a))
155+ else if ((W == a))
152156 then throw("Supplier does not exist")
153- else [IntegerEntry(l(Y, j), (n(Y, j) + 1)), IntegerEntry(u(V), (w(V) + X.amount))]
157+ else [IntegerEntry(l(Z, j), (n(Z, j) + 1)), IntegerEntry(u(W), (w(W) + Y.amount))]
154158 }
155159 }
156160
157161
158162
159-@Callable(S)
163+@Callable(T)
160164 func withdraw () = {
161- let V = toBase58String(S.caller.bytes)
162- let Z = w(V)
163- if ((0 >= Z))
165+ let W = toBase58String(T.caller.bytes)
166+ let aa = w(W)
167+ if ((0 >= aa))
164168 then throw("insuficient balance")
165- else [IntegerEntry(u(V), 0), ScriptTransfer(addressFromStringValue(V), Z, unit)]
169+ else [IntegerEntry(u(W), 0), ScriptTransfer(addressFromStringValue(W), aa, unit)]
166170 }
167171
168172
169173
170-@Callable(S)
171-func voteCommit (j,aa) = {
172- let m = toBase58String(S.caller.bytes)
173- let ab = G(j)
174- let ac = K(j)
175- if ((ab >= x))
174+@Callable(T)
175+func voteCommit (j,ab) = {
176+ let m = toBase58String(T.caller.bytes)
177+ let ac = G(j)
178+ let ad = K(j)
179+ if ((ac >= x))
176180 then throw("Reached max num of voters")
177181 else if ((E(j, m) != a))
178182 then throw("b1")
179183 else if ((s(j) == a))
180184 then throw("b2")
181- else if (if ((ac != a))
182- then (ac != z)
185+ else if (if ((ad != a))
186+ then (ad != z)
183187 else false)
184188 then throw("b3")
185- else [StringEntry(D(j, m), aa), IntegerEntry(F(j), (ab + 1)), StringEntry(J(j), if ((ab == x))
189+ else [StringEntry(D(j, m), ab), IntegerEntry(F(j), (ac + 1)), StringEntry(J(j), if ((ac == x))
186190 then A
187191 else z)]
188192 }
189193
190194
191195
192-@Callable(S)
193-func voteReveal (j,M,ad) = {
194- let m = toBase58String(S.caller.bytes)
195- let ac = K(j)
196- let ae = (N(j, M) + 1)
197- if ((toBase58String(sha256(toBytes((M + ad)))) != E(j, m)))
196+@Callable(T)
197+func voteReveal (j,M,ae) = {
198+ let m = toBase58String(T.caller.bytes)
199+ let ad = K(j)
200+ let af = (N(j, M) + 1)
201+ if ((toBase58String(sha256(toBytes((M + ae)))) != E(j, m)))
198202 then throw("Reveal data is not valid")
199203 else if ((x > G(j)))
200204 then throw("max num of voters hasnt reached yet")
201205 else if ((I(j, m) != a))
202206 then throw("user has already participated")
203- else if (if ((ac != z))
204- then (ac != A)
207+ else if (if ((ad != z))
208+ then (ad != A)
205209 else false)
206210 then throw("wrong status")
207211 else if (if ((M != B))
208212 then (M != C)
209213 else false)
210214 then throw("wrong vote")
211- else if (if ((ac == B))
215+ else if (if ((ad == B))
212216 then true
213- else (ac == C))
217+ else (ad == C))
214218 then throw("vote has finished")
215- else [StringEntry(H(j, m), M), IntegerEntry(L(j, M), ae), StringEntry(J(j), if ((ae >= y))
219+ else [StringEntry(H(j, m), M), IntegerEntry(L(j, M), af), StringEntry(J(j), if ((af >= y))
216220 then M
217221 else A)]
218222 }
219223
220224

github/deemru/w8io/873ac7e 
62.88 ms