tx · FhsJ9AhqRBzqV1M5BSgTV8uUqDLYVzq8fDaMaA7nRKv4

3MtKnDmJju2Y4dp9A2ACPr11jDZiW6gmKKK:  -0.05000000 Waves

2022.01.16 19:22 [1881742] smart account 3MtKnDmJju2Y4dp9A2ACPr11jDZiW6gmKKK > SELF 0.00000000 Waves

{ "type": 13, "id": "FhsJ9AhqRBzqV1M5BSgTV8uUqDLYVzq8fDaMaA7nRKv4", "fee": 5000000, "feeAssetId": null, "timestamp": 1642350229121, "version": 2, "chainId": 84, "sender": "3MtKnDmJju2Y4dp9A2ACPr11jDZiW6gmKKK", "senderPublicKey": "3itc77jAZTQAcaPCyYEe4KD7h18CvqZZ2JRynZHsuJ61", "proofs": [ "3LHsnU8bY9zYjWpfR9kdndayBkdsLQtyiafVx6SZZJPLMmw2DEwZEAm8w5tXAugX5KDdSJpZZX4kbdQ8ArVohrFM" ], "script": "base64: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AQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIFAAAABSRhY2MwAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAACAAAAAAAAAAADAAAAAAAAAAAEAAAAAAAAAAAFAAAAAAAAAAAGAAAAAAAAAAAHAAAAAAAAAAAIAAAAAAAAAAAJAAAAAAAAAAAKAAAAAAAAAAALAAAAAAAAAAAMAAAAAAAAAAANAAAAAAAAAAAOAAAAAAAAAAAPAAAAAAAAAAAQAAAAAAAAAAARAAAAAAAAAAASAAAAAAAAAAATAAAAAAAAAAAUAAAAAAAAAAAVAAAAAAAAAAAWAAAAAAAAAAAXAAAAAAAAAAAYAAAAAAAAAAAZAAAAAAAAAAAaAAAAAAAAAAAbAAAAAAAAAAAcAAAAAAAAAAAdAAAAAAAAAAAeAAAAAAAAAAAfAAAAAAAAAAAgAAAAAAAAAAAh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", "height": 1881742, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HxDsmW9h53FLCzvfwhJ7NBkrD82rFAwAMdAUPHzyjMSS Next: gxWzKTyYXqGujZb3SfDCjJfMytZNBe7oLm9DJGtSuTk Diff:
OldNewDifferences
116116 let T = S
117117 m[T]
118118 }
119- else throw("Type does not match!")
119+ else throw("Type does not match! Function: findHighestVote")
120120 }
121121
122122
123-func U (V,W,X) = {
124- let Y = getStringValue((W + "_board"))
125- let Z = split(Y, ",")
126- let aa = if ((X == "teamBlue"))
123+func U (V) = makeString(V, ",")
124+
125+
126+func W (X,Y,Z) = {
127+ let aa = getStringValue((Y + "_board"))
128+ let ab = split(aa, ",")
129+ let ac = if ((Z == "teamBlue"))
127130 then "B"
128131 else "Y"
129- func ab (p,ac) = {
130- let ad = p
131- let ae = ad._1
132- let af = ad._2
133- if ((af == V))
134- then $Tuple2((ae :+ aa), (af + 1))
135- else $Tuple2((ae :+ ac), (af + 1))
132+ func ad (p,ae) = {
133+ let af = p
134+ let ag = af._1
135+ let ah = af._2
136+ if ((ah == X))
137+ then $Tuple2((ag :+ ac), (ah + 1))
138+ else $Tuple2((ag :+ ae), (ah + 1))
136139 }
137140
138- let ag = {
139- let u = Z
141+ let ai = {
142+ let u = ab
140143 let v = size(u)
141144 let w = $Tuple2(nil, 0)
142145 func x (y,z) = if ((z >= v))
143146 then y
144- else ab(y, u[z])
147+ else ad(y, u[z])
145148
146149 func A (y,z) = if ((z >= v))
147150 then y
149152
150153 A(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42)
151154 }
152- let S = ag
153- if ($isInstanceOf(S, "(List[String], Int)"))
154- then {
155- let T = S
156- makeString(T._1, ",")
157- }
158- else throw("Type does not match!")
155+ U(ai._1)
159156 }
160157
161158
162-func ah (W,ai,aj,ak) = {
163- func al (p,ac) = (p :+ split(ac, "_")[1])
159+func aj (Y,ak,al,am) = {
160+ func an (p,ae) = (p :+ split(ae, "_")[1])
164161
165- let am = {
166- let u = ak
162+ let ao = {
163+ let u = am
167164 let v = size(u)
168165 let w = nil
169166 func x (y,z) = if ((z >= v))
170167 then y
171- else al(y, u[z])
168+ else an(y, u[z])
172169
173170 func A (y,z) = if ((z >= v))
174171 then y
176173
177174 A(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5)
178175 }
179- let m = B(am)
180- let K = l(m, am)
181- let an = J(m, K)
182- U(parseIntValue(an), W, aj)
176+ let m = B(ao)
177+ let K = l(m, ao)
178+ let ap = J(m, K)
179+ W(parseIntValue(ap), Y, al)
183180 }
184181
185182
186-@Callable(ao)
187-func setup (a,ap,aq) = if (!(isDefined(getString(this, "admin"))))
183+@Callable(aq)
184+func setup (a,ar,as) = if (!(isDefined(getString(this, "admin"))))
188185 then {
189- let ar = Issue(ap, aq, 0, 8, true)
190- let as = calculateAssetId(ar)
191-[ar, j("admin", a), g("votingDuration", 2), g("totalSupply", 0), j("tokenName", ap), j("tokenId", toBase58String(as)), g("tokenDecimals", 8)]
186+ let at = Issue(ar, as, 0, 8, true)
187+ let au = calculateAssetId(at)
188+[at, j("admin", a), g("votingDuration", 2), g("totalSupply", 0), j("tokenName", ar), j("tokenId", toBase58String(au)), g("tokenDecimals", 8)]
192189 }
193190 else throw("Pool already setup!")
194191
195192
196193
197-@Callable(ao)
198-func buyRound () = if ((size(ao.payments) > 0))
194+@Callable(aq)
195+func buyRound () = if ((size(aq.payments) > 0))
199196 then {
200- let at = ao.payments[0].amount
201- if ((at >= 1))
197+ let av = aq.payments[0].amount
198+ if ((av >= 1))
202199 then {
203- let au = fraction(at, 42, 1)
204- let av = (b + au)
205-[g("totalSupply", av), Reissue(fromBase58String(d), au, true), ScriptTransfer(ao.caller, au, fromBase58String(d))]
200+ let aw = fraction(av, 42, 1)
201+ let ax = (b + aw)
202+[g("totalSupply", ax), Reissue(fromBase58String(d), aw, true), ScriptTransfer(aq.caller, aw, fromBase58String(d))]
206203 }
207204 else throw("Payment is to small!")
208205 }
210207
211208
212209
213-@Callable(ao)
210+@Callable(aq)
214211 func createGame () = {
215- let aw = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
216- let W = toBase58String(ao.transactionId)
217-[j((W + "_board"), aw), j((W + "_status"), "waiting for players"), j((W + "_teamBlue"), toString(ao.caller)), j((W + "_teamYellow"), "")]
212+ let V = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
213+ let Y = toBase58String(aq.transactionId)
214+[j((Y + "_board"), V), j((Y + "_status"), "waiting for players"), j((Y + "_teamBlue"), toString(aq.caller)), j((Y + "_teamYellow"), "")]
218215 }
219216
220217
221218
222-@Callable(ao)
223-func joinGame (W) = {
224- let ax = getStringValue((W + "_teamBlue"))
225- let ay = getStringValue((W + "_teamYellow"))
226- let az = split(ax, ",")
219+@Callable(aq)
220+func joinGame (Y) = {
221+ let ay = getStringValue((Y + "_teamBlue"))
222+ let az = getStringValue((Y + "_teamYellow"))
227223 let aA = split(ay, ",")
228- if ((5 > size(az)))
229- then [j((W + "_teamBlue"), ((ax + ",") + toBase58String(ao.caller.bytes)))]
230- else if ((size(aA) == 4))
231- then [j((W + "_status"), "round_1,turn_teamBlue"), j((W + "_voting_1"), ""), g((W + "_storedHeight"), (height + c)), j((W + "_teamYellow"), ((ay + ",") + toBase58String(ao.caller.bytes)))]
232- else if ((size(aA) == 0))
233- then [j((W + "_teamYellow"), toBase58String(ao.caller.bytes))]
234- else if ((4 > size(aA)))
235- then [j((W + "_teamYellow"), ((ay + ",") + toBase58String(ao.caller.bytes)))]
224+ let aB = split(az, ",")
225+ if ((5 > size(aA)))
226+ then [j((Y + "_teamBlue"), ((ay + ",") + toBase58String(aq.caller.bytes)))]
227+ else if ((size(aB) == 4))
228+ then [j((Y + "_status"), "round_1,turn_teamBlue"), j((Y + "_voting_1"), ""), g((Y + "_storedHeight"), (height + c)), j((Y + "_teamYellow"), ((az + ",") + toBase58String(aq.caller.bytes)))]
229+ else if ((size(aB) == 0))
230+ then [j((Y + "_teamYellow"), toBase58String(aq.caller.bytes))]
231+ else if ((4 > size(aB)))
232+ then [j((Y + "_teamYellow"), ((az + ",") + toBase58String(aq.caller.bytes)))]
236233 else throw("Teams are full, cannot join.")
237234 }
238235
239236
240237
241-@Callable(ao)
242-func vote (W,aB) = {
243- let aC = valueOrErrorMessage(getStringValue((W + "_status")), "No status entry found under gameId!")
244- let ai = parseIntValue(drop(split(aC, ",")[0], 6))
245- let aj = drop(split(aC, ",")[1], 5)
246- let aD = valueOrErrorMessage(getInteger((W + "_storedHeight")), (("No status entry found under " + W) + "_storedHeight!"))
247- let aE = valueOrErrorMessage(getStringValue(((W + "_voting_") + toString(ai))), "No votes found for this game id!")
248- let aF = if ((size(aE) > 0))
249- then split(aE, ",")
238+@Callable(aq)
239+func vote (Y,aC) = {
240+ let aD = valueOrErrorMessage(getStringValue((Y + "_status")), "No status entry found under gameId!")
241+ let ak = parseIntValue(drop(split(aD, ",")[0], 6))
242+ let al = drop(split(aD, ",")[1], 5)
243+ let aE = valueOrErrorMessage(getInteger((Y + "_storedHeight")), (("No status entry found under " + Y) + "_storedHeight!"))
244+ let aF = valueOrErrorMessage(getStringValue(((Y + "_voting_") + toString(ak))), "No votes found for this game id!")
245+ let aG = if ((size(aF) > 0))
246+ then split(aF, ",")
250247 else nil
251- let aG = if ((aj == "teamBlue"))
248+ let aH = if ((al == "teamBlue"))
252249 then {
253- let aH = getStringValue((W + "_teamBlue"))
254- let aI = split(aH, ",")
255- aI
250+ let aI = getStringValue((Y + "_teamBlue"))
251+ let aJ = split(aI, ",")
252+ aJ
256253 }
257254 else {
258- let aJ = getStringValue((W + "_teamYellow"))
259- let aK = split(aJ, ",")
260- aK
255+ let aK = getStringValue((Y + "_teamYellow"))
256+ let aL = split(aK, ",")
257+ aL
261258 }
262- let aL = if ((aj == "teamBlue"))
259+ let aM = if ((al == "teamBlue"))
263260 then "teamYellow"
264261 else "teamBlue"
265- let aM = if ((aL == "teamBlue"))
262+ let aN = if ((aM == "teamBlue"))
266263 then {
267- let aH = getStringValue((W + "_teamBlue"))
268- let aI = split(aH, ",")
269- aI
264+ let aI = getStringValue((Y + "_teamBlue"))
265+ let aJ = split(aI, ",")
266+ aJ
270267 }
271268 else {
272- let aJ = getStringValue((W + "_teamYellow"))
273- let aK = split(aJ, ",")
274- aK
269+ let aK = getStringValue((Y + "_teamYellow"))
270+ let aL = split(aK, ",")
271+ aL
275272 }
276- let f = toBase58String(ao.caller.bytes)
277- if ((aD >= height))
278- then if (containsElement(aG, f))
273+ let f = toBase58String(aq.caller.bytes)
274+ if ((aE >= height))
275+ then if (containsElement(aH, f))
279276 then {
280- func aN (p,ac) = (p :+ split(ac, "_")[0])
277+ func aO (p,ae) = (p :+ split(ae, "_")[0])
281278
282- let aO = {
283- let u = aF
279+ let aP = {
280+ let u = aG
284281 let v = size(u)
285282 let w = nil
286283 func x (y,z) = if ((z >= v))
287284 then y
288- else aN(y, u[z])
285+ else aO(y, u[z])
289286
290287 func A (y,z) = if ((z >= v))
291288 then y
293290
294291 A(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5)
295292 }
296- if ((containsElement(aO, f) == false))
293+ if ((containsElement(aP, f) == false))
297294 then {
298- let aP = ((f + "_") + toString(aB))
299- let ak = (aF :+ aP)
300- let aQ = makeString(ak, ",")
301- let aR = ah(W, ai, aj, ak)
302- if ((5 > size(ak)))
303- then [j(((W + "_voting_") + toString(ai)), aQ)]
304- else [j(((W + "_voting_") + toString(ai)), aQ), j((W + "_board"), aR), g((W + "_storedHeight"), (height + c)), j((W + "_status"), ((("round_" + toString((ai + 1))) + ",turn_") + aL)), j(((W + "_voting_") + toString((ai + 1))), "")]
295+ let aQ = ((f + "_") + toString(aC))
296+ let am = (aG :+ aQ)
297+ let aR = makeString(am, ",")
298+ let aS = aj(Y, ak, al, am)
299+ if ((5 > size(am)))
300+ then [j(((Y + "_voting_") + toString(ak)), aR)]
301+ else [j(((Y + "_voting_") + toString(ak)), aR), j((Y + "_board"), aS), g((Y + "_storedHeight"), (height + c)), j((Y + "_status"), ((("round_" + toString((ak + 1))) + ",turn_") + aM)), j(((Y + "_voting_") + toString((ak + 1))), "")]
305302 }
306303 else throw("Caller already voted!")
307304 }
308- else throw((("Caller is not in " + aj) + "!"))
309- else if (containsElement(aM, f))
310- then if ((size(aF) > 0))
305+ else throw((("Caller is not in " + al) + "!"))
306+ else if (containsElement(aN, f))
307+ then if ((size(aG) > 0))
311308 then {
312- let aR = ah(W, ai, aj, aF)
313- let aP = ((f + "_") + toString(aB))
314-[j((W + "_board"), aR), g((W + "_storedHeight"), (height + c)), j((W + "_status"), ((("round_" + toString((ai + 1))) + ",turn_") + aL)), j(((W + "_voting_") + toString((ai + 1))), aP)]
309+ let aS = aj(Y, ak, al, aG)
310+ let aQ = ((f + "_") + toString(aC))
311+[j((Y + "_board"), aS), g((Y + "_storedHeight"), (height + c)), j((Y + "_status"), ((("round_" + toString((ak + 1))) + ",turn_") + aM)), j(((Y + "_voting_") + toString((ak + 1))), aQ)]
315312 }
316313 else {
317- let aP = ((f + "_") + toString(aB))
318-[g((W + "_storedHeight"), (height + c)), j((W + "_status"), ((("round_" + toString((ai + 1))) + ",turn_") + aL)), j(((W + "_voting_") + toString((ai + 1))), aP)]
314+ let aQ = ((f + "_") + toString(aC))
315+[g((Y + "_storedHeight"), (height + c)), j((Y + "_status"), ((("round_" + toString((ak + 1))) + ",turn_") + aM)), j(((Y + "_voting_") + toString((ak + 1))), aQ)]
319316 }
320- else throw((("Caller is not in " + aL) + "!"))
317+ else throw((("Caller is not in " + aM) + "!"))
321318 }
322319
323320
324321
325-@Callable(ao)
326-func updateStringEntry (h,k) = if (e(ao.caller.bytes))
322+@Callable(aq)
323+func updateStringEntry (h,k) = if (e(aq.caller.bytes))
327324 then [j(h, k)]
328325 else throw("Address does not match with admin address!")
329326
330327
331328
332-@Callable(ao)
333-func updateIntegerEntry (h,i) = if (e(ao.caller.bytes))
329+@Callable(aq)
330+func updateIntegerEntry (h,i) = if (e(aq.caller.bytes))
334331 then [g(h, i)]
335332 else throw("Address does not match with admin address!")
336333
337334
338335
339-@Callable(ao)
340-func deleteStorageEntry (h) = if (e(ao.caller.bytes))
336+@Callable(aq)
337+func deleteStorageEntry (h) = if (e(aq.caller.bytes))
341338 then [DeleteEntry(h)]
342339 else throw("Address does not match with admin address!")
343340
344341
345-@Verifier(aS)
346-func aT () = sigVerify(aS.bodyBytes, aS.proofs[0], aS.senderPublicKey)
342+@Verifier(aT)
343+func aU () = sigVerify(aT.bodyBytes, aT.proofs[0], aT.senderPublicKey)
347344
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = valueOrElse(getString(this, "admin"), "")
55
66 let b = valueOrElse(getInteger(this, "totalSupply"), 0)
77
88 let c = valueOrErrorMessage(getInteger(this, "votingDuration"), "No key votingDuration was found")
99
1010 let d = valueOrErrorMessage(getString(this, "tokenId"), "No key dTokenId was found")
1111
1212 func e (f) = if ((f == fromBase58String(a)))
1313 then true
1414 else false
1515
1616
1717 func g (h,i) = IntegerEntry(h, i)
1818
1919
2020 func j (h,k) = StringEntry(h, k)
2121
2222
2323 func l (m,n) = {
2424 func o (p,q) = {
2525 func r (s,t) = if ((q == t))
2626 then (s + 1)
2727 else s
2828
2929 (p :+ {
3030 let u = n
3131 let v = size(u)
3232 let w = 0
3333 func x (y,z) = if ((z >= v))
3434 then y
3535 else r(y, u[z])
3636
3737 func A (y,z) = if ((z >= v))
3838 then y
3939 else throw("List size exceeds 5")
4040
4141 A(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5)
4242 })
4343 }
4444
4545 let u = m
4646 let v = size(u)
4747 let w = nil
4848 func x (y,z) = if ((z >= v))
4949 then y
5050 else o(y, u[z])
5151
5252 func A (y,z) = if ((z >= v))
5353 then y
5454 else throw("List size exceeds 5")
5555
5656 A(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5)
5757 }
5858
5959
6060 func B (C) = {
6161 func D (p,q) = if ((containsElement(p, q) == false))
6262 then (p :+ q)
6363 else p
6464
6565 let u = C
6666 let v = size(u)
6767 let w = nil
6868 func x (y,z) = if ((z >= v))
6969 then y
7070 else D(y, u[z])
7171
7272 func A (y,z) = if ((z >= v))
7373 then y
7474 else throw("List size exceeds 5")
7575
7676 A(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5)
7777 }
7878
7979
8080 func E (F,G) = {
8181 let H = (size(G) - 1)
8282 let I = G[H]
8383 if ((F > I))
8484 then true
8585 else false
8686 }
8787
8888
8989 func J (m,K) = {
9090 func L (M,N) = if ((size(M) == 0))
9191 then (M :+ N)
9292 else if (E(N, M))
9393 then (M :+ N)
9494 else M
9595
9696 let O = {
9797 let u = K
9898 let v = size(u)
9999 let w = nil
100100 func x (y,z) = if ((z >= v))
101101 then y
102102 else L(y, u[z])
103103
104104 func A (y,z) = if ((z >= v))
105105 then y
106106 else throw("List size exceeds 5")
107107
108108 A(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5)
109109 }
110110 let P = (size(O) - 1)
111111 let Q = O[P]
112112 let R = indexOf(K, Q)
113113 let S = R
114114 if ($isInstanceOf(S, "Int"))
115115 then {
116116 let T = S
117117 m[T]
118118 }
119- else throw("Type does not match!")
119+ else throw("Type does not match! Function: findHighestVote")
120120 }
121121
122122
123-func U (V,W,X) = {
124- let Y = getStringValue((W + "_board"))
125- let Z = split(Y, ",")
126- let aa = if ((X == "teamBlue"))
123+func U (V) = makeString(V, ",")
124+
125+
126+func W (X,Y,Z) = {
127+ let aa = getStringValue((Y + "_board"))
128+ let ab = split(aa, ",")
129+ let ac = if ((Z == "teamBlue"))
127130 then "B"
128131 else "Y"
129- func ab (p,ac) = {
130- let ad = p
131- let ae = ad._1
132- let af = ad._2
133- if ((af == V))
134- then $Tuple2((ae :+ aa), (af + 1))
135- else $Tuple2((ae :+ ac), (af + 1))
132+ func ad (p,ae) = {
133+ let af = p
134+ let ag = af._1
135+ let ah = af._2
136+ if ((ah == X))
137+ then $Tuple2((ag :+ ac), (ah + 1))
138+ else $Tuple2((ag :+ ae), (ah + 1))
136139 }
137140
138- let ag = {
139- let u = Z
141+ let ai = {
142+ let u = ab
140143 let v = size(u)
141144 let w = $Tuple2(nil, 0)
142145 func x (y,z) = if ((z >= v))
143146 then y
144- else ab(y, u[z])
147+ else ad(y, u[z])
145148
146149 func A (y,z) = if ((z >= v))
147150 then y
148151 else throw("List size exceeds 42")
149152
150153 A(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42)
151154 }
152- let S = ag
153- if ($isInstanceOf(S, "(List[String], Int)"))
154- then {
155- let T = S
156- makeString(T._1, ",")
157- }
158- else throw("Type does not match!")
155+ U(ai._1)
159156 }
160157
161158
162-func ah (W,ai,aj,ak) = {
163- func al (p,ac) = (p :+ split(ac, "_")[1])
159+func aj (Y,ak,al,am) = {
160+ func an (p,ae) = (p :+ split(ae, "_")[1])
164161
165- let am = {
166- let u = ak
162+ let ao = {
163+ let u = am
167164 let v = size(u)
168165 let w = nil
169166 func x (y,z) = if ((z >= v))
170167 then y
171- else al(y, u[z])
168+ else an(y, u[z])
172169
173170 func A (y,z) = if ((z >= v))
174171 then y
175172 else throw("List size exceeds 5")
176173
177174 A(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5)
178175 }
179- let m = B(am)
180- let K = l(m, am)
181- let an = J(m, K)
182- U(parseIntValue(an), W, aj)
176+ let m = B(ao)
177+ let K = l(m, ao)
178+ let ap = J(m, K)
179+ W(parseIntValue(ap), Y, al)
183180 }
184181
185182
186-@Callable(ao)
187-func setup (a,ap,aq) = if (!(isDefined(getString(this, "admin"))))
183+@Callable(aq)
184+func setup (a,ar,as) = if (!(isDefined(getString(this, "admin"))))
188185 then {
189- let ar = Issue(ap, aq, 0, 8, true)
190- let as = calculateAssetId(ar)
191-[ar, j("admin", a), g("votingDuration", 2), g("totalSupply", 0), j("tokenName", ap), j("tokenId", toBase58String(as)), g("tokenDecimals", 8)]
186+ let at = Issue(ar, as, 0, 8, true)
187+ let au = calculateAssetId(at)
188+[at, j("admin", a), g("votingDuration", 2), g("totalSupply", 0), j("tokenName", ar), j("tokenId", toBase58String(au)), g("tokenDecimals", 8)]
192189 }
193190 else throw("Pool already setup!")
194191
195192
196193
197-@Callable(ao)
198-func buyRound () = if ((size(ao.payments) > 0))
194+@Callable(aq)
195+func buyRound () = if ((size(aq.payments) > 0))
199196 then {
200- let at = ao.payments[0].amount
201- if ((at >= 1))
197+ let av = aq.payments[0].amount
198+ if ((av >= 1))
202199 then {
203- let au = fraction(at, 42, 1)
204- let av = (b + au)
205-[g("totalSupply", av), Reissue(fromBase58String(d), au, true), ScriptTransfer(ao.caller, au, fromBase58String(d))]
200+ let aw = fraction(av, 42, 1)
201+ let ax = (b + aw)
202+[g("totalSupply", ax), Reissue(fromBase58String(d), aw, true), ScriptTransfer(aq.caller, aw, fromBase58String(d))]
206203 }
207204 else throw("Payment is to small!")
208205 }
209206 else throw("No payment attached!")
210207
211208
212209
213-@Callable(ao)
210+@Callable(aq)
214211 func createGame () = {
215- let aw = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
216- let W = toBase58String(ao.transactionId)
217-[j((W + "_board"), aw), j((W + "_status"), "waiting for players"), j((W + "_teamBlue"), toString(ao.caller)), j((W + "_teamYellow"), "")]
212+ let V = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
213+ let Y = toBase58String(aq.transactionId)
214+[j((Y + "_board"), V), j((Y + "_status"), "waiting for players"), j((Y + "_teamBlue"), toString(aq.caller)), j((Y + "_teamYellow"), "")]
218215 }
219216
220217
221218
222-@Callable(ao)
223-func joinGame (W) = {
224- let ax = getStringValue((W + "_teamBlue"))
225- let ay = getStringValue((W + "_teamYellow"))
226- let az = split(ax, ",")
219+@Callable(aq)
220+func joinGame (Y) = {
221+ let ay = getStringValue((Y + "_teamBlue"))
222+ let az = getStringValue((Y + "_teamYellow"))
227223 let aA = split(ay, ",")
228- if ((5 > size(az)))
229- then [j((W + "_teamBlue"), ((ax + ",") + toBase58String(ao.caller.bytes)))]
230- else if ((size(aA) == 4))
231- then [j((W + "_status"), "round_1,turn_teamBlue"), j((W + "_voting_1"), ""), g((W + "_storedHeight"), (height + c)), j((W + "_teamYellow"), ((ay + ",") + toBase58String(ao.caller.bytes)))]
232- else if ((size(aA) == 0))
233- then [j((W + "_teamYellow"), toBase58String(ao.caller.bytes))]
234- else if ((4 > size(aA)))
235- then [j((W + "_teamYellow"), ((ay + ",") + toBase58String(ao.caller.bytes)))]
224+ let aB = split(az, ",")
225+ if ((5 > size(aA)))
226+ then [j((Y + "_teamBlue"), ((ay + ",") + toBase58String(aq.caller.bytes)))]
227+ else if ((size(aB) == 4))
228+ then [j((Y + "_status"), "round_1,turn_teamBlue"), j((Y + "_voting_1"), ""), g((Y + "_storedHeight"), (height + c)), j((Y + "_teamYellow"), ((az + ",") + toBase58String(aq.caller.bytes)))]
229+ else if ((size(aB) == 0))
230+ then [j((Y + "_teamYellow"), toBase58String(aq.caller.bytes))]
231+ else if ((4 > size(aB)))
232+ then [j((Y + "_teamYellow"), ((az + ",") + toBase58String(aq.caller.bytes)))]
236233 else throw("Teams are full, cannot join.")
237234 }
238235
239236
240237
241-@Callable(ao)
242-func vote (W,aB) = {
243- let aC = valueOrErrorMessage(getStringValue((W + "_status")), "No status entry found under gameId!")
244- let ai = parseIntValue(drop(split(aC, ",")[0], 6))
245- let aj = drop(split(aC, ",")[1], 5)
246- let aD = valueOrErrorMessage(getInteger((W + "_storedHeight")), (("No status entry found under " + W) + "_storedHeight!"))
247- let aE = valueOrErrorMessage(getStringValue(((W + "_voting_") + toString(ai))), "No votes found for this game id!")
248- let aF = if ((size(aE) > 0))
249- then split(aE, ",")
238+@Callable(aq)
239+func vote (Y,aC) = {
240+ let aD = valueOrErrorMessage(getStringValue((Y + "_status")), "No status entry found under gameId!")
241+ let ak = parseIntValue(drop(split(aD, ",")[0], 6))
242+ let al = drop(split(aD, ",")[1], 5)
243+ let aE = valueOrErrorMessage(getInteger((Y + "_storedHeight")), (("No status entry found under " + Y) + "_storedHeight!"))
244+ let aF = valueOrErrorMessage(getStringValue(((Y + "_voting_") + toString(ak))), "No votes found for this game id!")
245+ let aG = if ((size(aF) > 0))
246+ then split(aF, ",")
250247 else nil
251- let aG = if ((aj == "teamBlue"))
248+ let aH = if ((al == "teamBlue"))
252249 then {
253- let aH = getStringValue((W + "_teamBlue"))
254- let aI = split(aH, ",")
255- aI
250+ let aI = getStringValue((Y + "_teamBlue"))
251+ let aJ = split(aI, ",")
252+ aJ
256253 }
257254 else {
258- let aJ = getStringValue((W + "_teamYellow"))
259- let aK = split(aJ, ",")
260- aK
255+ let aK = getStringValue((Y + "_teamYellow"))
256+ let aL = split(aK, ",")
257+ aL
261258 }
262- let aL = if ((aj == "teamBlue"))
259+ let aM = if ((al == "teamBlue"))
263260 then "teamYellow"
264261 else "teamBlue"
265- let aM = if ((aL == "teamBlue"))
262+ let aN = if ((aM == "teamBlue"))
266263 then {
267- let aH = getStringValue((W + "_teamBlue"))
268- let aI = split(aH, ",")
269- aI
264+ let aI = getStringValue((Y + "_teamBlue"))
265+ let aJ = split(aI, ",")
266+ aJ
270267 }
271268 else {
272- let aJ = getStringValue((W + "_teamYellow"))
273- let aK = split(aJ, ",")
274- aK
269+ let aK = getStringValue((Y + "_teamYellow"))
270+ let aL = split(aK, ",")
271+ aL
275272 }
276- let f = toBase58String(ao.caller.bytes)
277- if ((aD >= height))
278- then if (containsElement(aG, f))
273+ let f = toBase58String(aq.caller.bytes)
274+ if ((aE >= height))
275+ then if (containsElement(aH, f))
279276 then {
280- func aN (p,ac) = (p :+ split(ac, "_")[0])
277+ func aO (p,ae) = (p :+ split(ae, "_")[0])
281278
282- let aO = {
283- let u = aF
279+ let aP = {
280+ let u = aG
284281 let v = size(u)
285282 let w = nil
286283 func x (y,z) = if ((z >= v))
287284 then y
288- else aN(y, u[z])
285+ else aO(y, u[z])
289286
290287 func A (y,z) = if ((z >= v))
291288 then y
292289 else throw("List size exceeds 5")
293290
294291 A(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5)
295292 }
296- if ((containsElement(aO, f) == false))
293+ if ((containsElement(aP, f) == false))
297294 then {
298- let aP = ((f + "_") + toString(aB))
299- let ak = (aF :+ aP)
300- let aQ = makeString(ak, ",")
301- let aR = ah(W, ai, aj, ak)
302- if ((5 > size(ak)))
303- then [j(((W + "_voting_") + toString(ai)), aQ)]
304- else [j(((W + "_voting_") + toString(ai)), aQ), j((W + "_board"), aR), g((W + "_storedHeight"), (height + c)), j((W + "_status"), ((("round_" + toString((ai + 1))) + ",turn_") + aL)), j(((W + "_voting_") + toString((ai + 1))), "")]
295+ let aQ = ((f + "_") + toString(aC))
296+ let am = (aG :+ aQ)
297+ let aR = makeString(am, ",")
298+ let aS = aj(Y, ak, al, am)
299+ if ((5 > size(am)))
300+ then [j(((Y + "_voting_") + toString(ak)), aR)]
301+ else [j(((Y + "_voting_") + toString(ak)), aR), j((Y + "_board"), aS), g((Y + "_storedHeight"), (height + c)), j((Y + "_status"), ((("round_" + toString((ak + 1))) + ",turn_") + aM)), j(((Y + "_voting_") + toString((ak + 1))), "")]
305302 }
306303 else throw("Caller already voted!")
307304 }
308- else throw((("Caller is not in " + aj) + "!"))
309- else if (containsElement(aM, f))
310- then if ((size(aF) > 0))
305+ else throw((("Caller is not in " + al) + "!"))
306+ else if (containsElement(aN, f))
307+ then if ((size(aG) > 0))
311308 then {
312- let aR = ah(W, ai, aj, aF)
313- let aP = ((f + "_") + toString(aB))
314-[j((W + "_board"), aR), g((W + "_storedHeight"), (height + c)), j((W + "_status"), ((("round_" + toString((ai + 1))) + ",turn_") + aL)), j(((W + "_voting_") + toString((ai + 1))), aP)]
309+ let aS = aj(Y, ak, al, aG)
310+ let aQ = ((f + "_") + toString(aC))
311+[j((Y + "_board"), aS), g((Y + "_storedHeight"), (height + c)), j((Y + "_status"), ((("round_" + toString((ak + 1))) + ",turn_") + aM)), j(((Y + "_voting_") + toString((ak + 1))), aQ)]
315312 }
316313 else {
317- let aP = ((f + "_") + toString(aB))
318-[g((W + "_storedHeight"), (height + c)), j((W + "_status"), ((("round_" + toString((ai + 1))) + ",turn_") + aL)), j(((W + "_voting_") + toString((ai + 1))), aP)]
314+ let aQ = ((f + "_") + toString(aC))
315+[g((Y + "_storedHeight"), (height + c)), j((Y + "_status"), ((("round_" + toString((ak + 1))) + ",turn_") + aM)), j(((Y + "_voting_") + toString((ak + 1))), aQ)]
319316 }
320- else throw((("Caller is not in " + aL) + "!"))
317+ else throw((("Caller is not in " + aM) + "!"))
321318 }
322319
323320
324321
325-@Callable(ao)
326-func updateStringEntry (h,k) = if (e(ao.caller.bytes))
322+@Callable(aq)
323+func updateStringEntry (h,k) = if (e(aq.caller.bytes))
327324 then [j(h, k)]
328325 else throw("Address does not match with admin address!")
329326
330327
331328
332-@Callable(ao)
333-func updateIntegerEntry (h,i) = if (e(ao.caller.bytes))
329+@Callable(aq)
330+func updateIntegerEntry (h,i) = if (e(aq.caller.bytes))
334331 then [g(h, i)]
335332 else throw("Address does not match with admin address!")
336333
337334
338335
339-@Callable(ao)
340-func deleteStorageEntry (h) = if (e(ao.caller.bytes))
336+@Callable(aq)
337+func deleteStorageEntry (h) = if (e(aq.caller.bytes))
341338 then [DeleteEntry(h)]
342339 else throw("Address does not match with admin address!")
343340
344341
345-@Verifier(aS)
346-func aT () = sigVerify(aS.bodyBytes, aS.proofs[0], aS.senderPublicKey)
342+@Verifier(aT)
343+func aU () = sigVerify(aT.bodyBytes, aT.proofs[0], aT.senderPublicKey)
347344

github/deemru/w8io/c3f4982 
95.14 ms