tx · BQKY1HM1xunmPXFtQXhz8CiMJf3LwVrLoyBorfEvfcHv

3N81Dk1WuUv7UKt3inqWVYN81J8VHjoV3MC:  -0.01400000 Waves

2022.02.20 19:04 [1932183] smart account 3N81Dk1WuUv7UKt3inqWVYN81J8VHjoV3MC > SELF 0.00000000 Waves

{ "type": 13, "id": "BQKY1HM1xunmPXFtQXhz8CiMJf3LwVrLoyBorfEvfcHv", "fee": 1400000, "feeAssetId": null, "timestamp": 1645373095359, "version": 2, "chainId": 84, "sender": "3N81Dk1WuUv7UKt3inqWVYN81J8VHjoV3MC", "senderPublicKey": "5vXdNgZ1TR8AAzcnLumQTQYzcU3AwHj91bZTtiE3roBE", "proofs": [ "4AJyndnnAjev17fijBLzPyqozPqU38yUPvJdh2DArAfBNv9MhEv1nZzTqxTFmcfrYKoZwgdC5HSfVDDuG11zidaB" ], "script": "base64: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AAACBQAAAARpdGVtBQAAAAR1c2VyAQAAABRnZXRWYWx1ZUNvbW1pdHNDb3VudAAAAAEAAAAEaXRlbQkBAAAAD2dldEludGVnZXJCeUtleQAAAAEJAQAAABJnZXRLZXlDb21taXRzQ291bnQAAAABBQAAAARpdGVtAQAAAA5nZXRWYWx1ZVJldmVhbAAAAAIAAAAEaXRlbQAAAAR1c2VyCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAMZ2V0S2V5UmV2ZWFsAAAAAgUAAAAEaXRlbQUAAAAEdXNlcgEAAAASZ2V0VmFsdWVJdGVtU3RhdHVzAAAAAQAAAARpdGVtCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABCQEAAAAQZ2V0S2V5SXRlbVN0YXR1cwAAAAEFAAAABGl0ZW0BAAAAEmdldFZhbHVlVm90ZXNDb3VudAAAAAIAAAAEaXRlbQAAAAR2b3RlCQEAAAAPZ2V0SW50ZWdlckJ5S2V5AAAAAQkBAAAAEGdldEtleVZvdGVzQ291bnQAAAACBQAAAARpdGVtBQAAAAR2b3RlAQAAABRnZXRWYWx1ZUl0ZW1TdXBwbGllcgAAAAEAAAAHYWNjb3VudAQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAAdhY2NvdW50AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAABE5PTkUAAAADAAAAAWkBAAAAB2FkZEl0ZW0AAAADAAAABXRpdGxlAAAABXByaWNlAAAABGRhdGEEAAAAD3N1cHBsaWVyQWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAARpdGVtCQEAAAAKZ2V0S2V5SXRlbQAAAAIFAAAAD3N1cHBsaWVyQWRkcmVzcwUAAAAFdGl0bGUDCQAAZwAAAAIAAAAAAAAAAAAFAAAABXByaWNlCQAAAgAAAAECAAAALlB1cmNoYXNlIGFtb3VudCBjYW5ub3QgYmUgbGVzcyB0aGFuIGl0ZW0gcHJpY2UDCQEAAAACIT0AAAACCQEAAAAUZ2V0VmFsdWVJdGVtU3VwcGxpZXIAAAABBQAAAARpdGVtBQAAAAROT05FCQAAAgAAAAECAAAA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", "height": 1932183, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BaPeHfHLAwQSGnudC98zyVm2UGmF5Hoi58keJiDYbvqd Next: 6kwW4cUXabAtA7GqjRCKXhw5oNj9ek7HdginDmLHsqMB 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 = "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 "NONE"
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,o) = {
4141 let p = (n + o)
4242 ("item_" + toBase58String(sha256(toBytes(p))))
4343 }
4444
4545
4646 func q (r) = (r + "_owner")
4747
4848
4949 func s (r) = (r + "_price")
5050
5151
5252 func t (r) = (r + "_data")
5353
5454
5555 func u (r,v) = (((r + "_") + v) + "_commmit")
5656
5757
5858 func w (r) = (r + "_cmtcnt")
5959
6060
6161 func x (r,v) = (((r + "_") + v) + "_reveal")
6262
6363
6464 func y (r) = (r + "_status")
6565
6666
6767 func z (r,A) = ((r + "_res:") + A)
6868
6969
7070 func B (v,r) = (((r + "_") + v) + "_cnt")
7171
7272
7373 func C (D) = (D + "_balance")
7474
7575
7676 func E (v,r) = {
7777 let F = B(v, r)
7878 let j = getInteger(this, F)
7979 if ($isInstanceOf(j, "Int"))
8080 then {
8181 let k = j
8282 k
8383 }
8484 else 0
8585 }
8686
8787
8888 func G (r) = {
8989 let H = s(r)
9090 getInteger(this, H)
9191 }
9292
9393
9494 func I (r,v) = h(u(r, v))
9595
9696
9797 func J (r) = l(w(r))
9898
9999
100100 func K (r,v) = h(x(r, v))
101101
102102
103103 func L (r) = h(y(r))
104104
105105
106106 func M (r,A) = l(z(r, A))
107107
108108
109109 func N (D) = {
110110 let j = getString(this, D)
111111 if ($isInstanceOf(j, "String"))
112112 then {
113113 let k = j
114114 k
115115 }
116116 else "NONE"
117117 }
118118
119119
120120 @Callable(O)
121121 func addItem (o,P,Q) = {
122122 let R = toBase58String(O.caller.bytes)
123123 let r = m(R, o)
124124 if ((0 >= P))
125125 then throw("Purchase amount cannot be less than item price")
126126 else if ((N(r) != a))
127127 then throw("An item is already exists")
128128 else WriteSet([DataEntry(q(r), R), DataEntry(s(r), P), DataEntry(t(r), Q)])
129129 }
130130
131131
132132
133133 @Callable(O)
134134 func voteCommit (r,S) = {
135135 let v = toBase58String(O.caller.bytes)
136136 let T = J(r)
137137 let U = L(r)
138138 if ((T >= b))
139139 then throw("Reached max numer of voters")
140140 else if ((I(r, v) != a))
141141 then throw("You voted already")
142142 else if ((q(r) == a))
143143 then throw("Item does not exist")
144144 else if (if ((U != a))
145145 then (U != f)
146146 else false)
147147 then throw("Voting is not active for this item noew")
148148 else {
149149 let V = if ((T == b))
150150 then g
151151 else f
152152 WriteSet([DataEntry(u(r, v), S), DataEntry(w(r), (T + 1)), DataEntry(y(r), V)])
153153 }
154154 }
155155
156156
157157
158158 @Callable(O)
159159 func voteReveal (r,A,W) = {
160160 let v = toBase58String(O.caller.bytes)
161161 let U = L(r)
162162 let X = (M(r, A) + 1)
163163 let Y = ((r + A) + W)
164164 if ((toBase58String(sha256(toBytes(Y))) != I(r, v)))
165165 then throw("Reveal data is not valid")
166166 else if ((b > J(r)))
167167 then throw(("Max number of voters not reached: " + toString(b)))
168168 else if ((K(r, v) != a))
169169 then throw("You voted already")
170170 else if (if ((U != f))
171171 then (U != g)
172172 else false)
173173 then throw("Voting is not active of this item now")
174174 else if (if ((A != d))
175175 then (A != e)
176176 else false)
177177 then throw("Provided voting option is incorrect")
178178 else {
179179 let V = if ((X >= c))
180180 then A
181181 else g
182182 WriteSet([DataEntry(u(r, v), A), DataEntry(z(r, v), X), DataEntry(y(r), V)])
183183 }
184184 }
185185
186186

github/deemru/w8io/03bedc9 
26.99 ms