tx · CjbR1ETeFWZPC3cQx17YiKhx7zzfFLXSQKqFnFXp15KC

3N9QhjBmyFRrGW5d8VQojB4wZhHmQhuvVrL:  -0.01600000 Waves

2022.11.19 23:21 [2324476] smart account 3N9QhjBmyFRrGW5d8VQojB4wZhHmQhuvVrL > SELF 0.00000000 Waves

{ "type": 13, "id": "CjbR1ETeFWZPC3cQx17YiKhx7zzfFLXSQKqFnFXp15KC", "fee": 1600000, "feeAssetId": null, "timestamp": 1668889293842, "version": 2, "chainId": 84, "sender": "3N9QhjBmyFRrGW5d8VQojB4wZhHmQhuvVrL", "senderPublicKey": "BefhVEanzhrtdYfeWquaoSsMZw3BEaEZZB86Kosqw7Qb", "proofs": [ "4VbkmMtaz5YFozPxdHPijgZydhmBS1NiFEnJEUFHc4HVV3RBjxG1m7cF4BLPqSq7N5yPVAusTgsPyCPSGS6dDr3p" ], "script": "base64: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", "height": 2324476, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6C7CHZq3ZJCasXCRd8Rz23Ctxe931gaJDe9acNAVc98i Next: Fr43DwGkze5AFahHyYtaCWcvnBp8pPxXkugQrdMyfzov Diff:
OldNewDifferences
1515
1616 let g = 10000
1717
18-func h (i) = {
19- let j = i
20- if ($isInstanceOf(j, "ByteVector"))
18+let h = ["GroupA-1st", "GroupA-2nd", "GroupB-1st", "GroupB-2nd", "GroupC-1st", "GroupC-2nd", "GroupD-1st", "GroupD-2nd", "GroupE-1st", "GroupE-2nd", "GroupF-1st", "GroupF-2nd", "GroupG-1st", "GroupG-2nd", "GroupH-1st", "GroupH-2nd"]
19+
20+let i = ["Octo1-winner", "Octo2-winner", "Octo3-winner", "Octo4-winner", "Octo5-winner", "Octo6-winner", "Octo7-winner", "Octo8-winner"]
21+
22+let j = ["Quarter1-winner", "Quarter2-winner", "Quarter3-winner", "Quarter4-winner"]
23+
24+let k = ["Semi1-winner", "Semi2-winner"]
25+
26+let l = "Final-winner"
27+
28+func m (n) = {
29+ let o = n
30+ if ($isInstanceOf(o, "ByteVector"))
2131 then {
22- let k = j
23- toBase58String(k)
32+ let p = o
33+ toBase58String(p)
2434 }
2535 else "WAVES"
2636 }
2737
2838
29-func l (i) = if ((i == "WAVES"))
39+func q (n) = if ((n == "WAVES"))
3040 then unit
31- else fromBase58String(i)
41+ else fromBase58String(n)
3242
3343
34-func m (n) = {
35- let j = getInteger(this, n)
36- if ($isInstanceOf(j, "Int"))
44+func r (s) = {
45+ let o = getInteger(this, s)
46+ if ($isInstanceOf(o, "Int"))
3747 then {
38- let o = j
39- o
48+ let t = o
49+ t
4050 }
4151 else 0
4252 }
4353
4454
45-func p (n) = {
46- let j = getBoolean(this, n)
47- if ($isInstanceOf(j, "Boolean"))
55+func u (s) = {
56+ let o = getBoolean(this, s)
57+ if ($isInstanceOf(o, "Boolean"))
4858 then {
49- let k = j
50- k
59+ let p = o
60+ p
5161 }
5262 else false
5363 }
5464
5565
56-func q (n) = {
57- let j = getString(this, n)
58- if ($isInstanceOf(j, "String"))
66+func v (s) = {
67+ let o = getString(this, s)
68+ if ($isInstanceOf(o, "String"))
5969 then {
60- let r = j
61- r
70+ let w = o
71+ w
6272 }
6373 else ""
6474 }
6575
6676
67-func s (t) = (toBase58String(t) == a)
77+func x (s) = {
78+ let o = getString(addressFromStringValue(b), s)
79+ if ($isInstanceOf(o, "String"))
80+ then {
81+ let w = o
82+ w
83+ }
84+ else ""
85+ }
6886
6987
70-func u (v) = p((v + "_betted"))
88+func y (z) = (toBase58String(z) == a)
7189
7290
73-func w () = m(c)
91+func A (B) = u((B + "_betted"))
7492
7593
76-func x () = m(d)
94+func C () = r(c)
7795
7896
79-@Callable(o)
80-func setBetAmount (y) = if (s(o.callerPublicKey))
81- then [IntegerEntry(c, y)]
97+func D () = r(d)
98+
99+
100+func E (F,G) = {
101+ let H = split(G, "_")[0]
102+ (F + (if ((x(H) == v(G)))
103+ then 1
104+ else 0))
105+ }
106+
107+
108+func I (B,s) = ((B + "_") + s)
109+
110+
111+func J (B) = [I(B, h[0]), I(B, h[1]), I(B, h[2]), I(B, h[3]), I(B, h[4]), I(B, h[5]), I(B, h[6]), I(B, h[7]), I(B, h[8]), I(B, h[9]), I(B, h[10]), I(B, h[11]), I(B, h[12]), I(B, h[13]), I(B, h[14]), I(B, h[15])]
112+
113+
114+func K (B) = {
115+ let L = J(B)
116+ let M = L
117+ let N = size(M)
118+ let O = 0
119+ func P (Q,R) = if ((R >= N))
120+ then Q
121+ else E(Q, M[R])
122+
123+ func S (Q,R) = if ((R >= N))
124+ then Q
125+ else throw("List size exceeds 16")
126+
127+ S(P(P(P(P(P(P(P(P(P(P(P(P(P(P(P(P(O, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16)
128+ }
129+
130+
131+@Callable(t)
132+func setBetAmount (T) = if (y(t.callerPublicKey))
133+ then [IntegerEntry(c, T)]
82134 else throw("Only admin")
83135
84136
85137
86-@Callable(o)
87-func setDeadLine (z) = if (s(o.callerPublicKey))
88- then [IntegerEntry(d, z)]
138+@Callable(t)
139+func setDeadLine (U) = if (y(t.callerPublicKey))
140+ then [IntegerEntry(d, U)]
89141 else throw("Only admin")
90142
91143
92144
93-@Callable(o)
94-func makeBet (A,B,C,D,E,F) = {
95- let G = o.payments[0]
96- let H = G.assetId
97- let I = value(G.amount)
98- let J = toString(o.caller)
99- let K = u(J)
100- let L = x()
101- if ((L > height))
102- then if (!(K))
103- then if ((h(H) == "WAVES"))
145+@Callable(t)
146+func makeBet (V,W,X,Y,Z,aa) = {
147+ let ab = t.payments[0]
148+ let ac = ab.assetId
149+ let ad = value(ab.amount)
150+ let ae = toString(t.caller)
151+ let af = A(ae)
152+ let ag = D()
153+ if ((ag > height))
154+ then if (!(af))
155+ then if ((m(ac) == "WAVES"))
104156 then {
105- let M = w()
106- if ((M != 0))
107- then if ((I == M))
157+ let ah = C()
158+ if ((ah != 0))
159+ then if ((ad == ah))
108160 then {
109- let N = split(A, "_")
110- let O = split(B, "_")
111- let P = split(C, "_")
112- let Q = split(D, "_")
113- let R = split(E, "_")
114- if (if (if (if (if ((size(N) == 8))
115- then (size(O) == 8)
161+ let ai = split(V, "_")
162+ let aj = split(W, "_")
163+ let ak = split(X, "_")
164+ let al = split(Y, "_")
165+ let am = split(Z, "_")
166+ if (if (if (if (if ((size(ai) == 8))
167+ then (size(aj) == 8)
116168 else false)
117- then (size(P) == 8)
169+ then (size(ak) == 8)
118170 else false)
119- then (size(Q) == 4)
171+ then (size(al) == 4)
120172 else false)
121- then (size(R) == 2)
173+ then (size(am) == 2)
122174 else false)
123- then [BooleanEntry((J + "_betted"), true), IntegerEntry((J + "_height"), height), IntegerEntry((J + "_betAmount"), I), StringEntry((J + "_GroupA-1st"), N[0]), StringEntry((J + "_GroupA-2nd"), O[0]), StringEntry((J + "_GroupB-1st"), N[1]), StringEntry((J + "_GroupB-2nd"), O[1]), StringEntry((J + "_GroupC-1st"), N[2]), StringEntry((J + "_GroupC-2nd"), O[2]), StringEntry((J + "_GroupD-1st"), N[3]), StringEntry((J + "_GroupD-2nd"), O[3]), StringEntry((J + "_GroupE-1st"), N[4]), StringEntry((J + "_GroupE-2nd"), O[4]), StringEntry((J + "_GroupF-1st"), N[5]), StringEntry((J + "_GroupF-2nd"), O[5]), StringEntry((J + "_GroupG-1st"), N[6]), StringEntry((J + "_GroupG-2nd"), O[6]), StringEntry((J + "_GroupH-1st"), N[7]), StringEntry((J + "_GroupH-2nd"), O[7]), StringEntry((J + "_Octo1-winner"), P[0]), StringEntry((J + "_Octo2-winner"), P[1]), StringEntry((J + "_Octo3-winner"), P[2]), StringEntry((J + "_Octo4-winner"), P[3]), StringEntry((J + "_Octo5-winner"), P[4]), StringEntry((J + "_Octo6-winner"), P[5]), StringEntry((J + "_Octo7-winner"), P[6]), StringEntry((J + "_Octo8-winner"), P[7]), StringEntry((J + "_Quarter1-winner"), Q[0]), StringEntry((J + "_Quarter2-winner"), Q[1]), StringEntry((J + "_Quarter3-winner"), Q[2]), StringEntry((J + "_Quarter4-winner"), Q[3]), StringEntry((J + "_Semi1-winner"), R[0]), StringEntry((J + "_Semi2-winner"), R[1]), StringEntry((J + "_Final-winner"), F)]
175+ then [BooleanEntry((ae + "_betted"), true), IntegerEntry((ae + "_height"), height), IntegerEntry((ae + "_betAmount"), ad), StringEntry((ae + "_GroupA-1st"), ai[0]), StringEntry((ae + "_GroupA-2nd"), aj[0]), StringEntry((ae + "_GroupB-1st"), ai[1]), StringEntry((ae + "_GroupB-2nd"), aj[1]), StringEntry((ae + "_GroupC-1st"), ai[2]), StringEntry((ae + "_GroupC-2nd"), aj[2]), StringEntry((ae + "_GroupD-1st"), ai[3]), StringEntry((ae + "_GroupD-2nd"), aj[3]), StringEntry((ae + "_GroupE-1st"), ai[4]), StringEntry((ae + "_GroupE-2nd"), aj[4]), StringEntry((ae + "_GroupF-1st"), ai[5]), StringEntry((ae + "_GroupF-2nd"), aj[5]), StringEntry((ae + "_GroupG-1st"), ai[6]), StringEntry((ae + "_GroupG-2nd"), aj[6]), StringEntry((ae + "_GroupH-1st"), ai[7]), StringEntry((ae + "_GroupH-2nd"), aj[7]), StringEntry((ae + "_Octo1-winner"), ak[0]), StringEntry((ae + "_Octo2-winner"), ak[1]), StringEntry((ae + "_Octo3-winner"), ak[2]), StringEntry((ae + "_Octo4-winner"), ak[3]), StringEntry((ae + "_Octo5-winner"), ak[4]), StringEntry((ae + "_Octo6-winner"), ak[5]), StringEntry((ae + "_Octo7-winner"), ak[6]), StringEntry((ae + "_Octo8-winner"), ak[7]), StringEntry((ae + "_Quarter1-winner"), al[0]), StringEntry((ae + "_Quarter2-winner"), al[1]), StringEntry((ae + "_Quarter3-winner"), al[2]), StringEntry((ae + "_Quarter4-winner"), al[3]), StringEntry((ae + "_Semi1-winner"), am[0]), StringEntry((ae + "_Semi2-winner"), am[1]), StringEntry((ae + "_Final-winner"), aa)]
124176 else throw("Incorrect data arrived in arguments")
125177 }
126- else throw((("Attach exactly " + toString(M)) + " /100000000 Waves as payment"))
178+ else throw((("Attach exactly " + toString(ah)) + " /100000000 Waves as payment"))
127179 else throw("Zero betAmount from contract storage")
128180 }
129181 else throw("Only Waves is allowed as payment asset to bet")
133185
134186
135187
136-@Callable(o)
137-func deleteBatch (v) = {
138- let J = v
139- if (s(o.callerPublicKey))
140- then [DeleteEntry((J + "_betted")), DeleteEntry((J + "_height")), DeleteEntry((J + "_betAmount")), DeleteEntry((J + "_GroupA-1st")), DeleteEntry((J + "_GroupA-2nd")), DeleteEntry((J + "_GroupB-1st")), DeleteEntry((J + "_GroupB-2nd")), DeleteEntry((J + "_GroupC-1st")), DeleteEntry((J + "_GroupC-2nd")), DeleteEntry((J + "_GroupD-1st")), DeleteEntry((J + "_GroupD-2nd")), DeleteEntry((J + "_GroupE-1st")), DeleteEntry((J + "_GroupE-2nd")), DeleteEntry((J + "_GroupF-1st")), DeleteEntry((J + "_GroupF-2nd")), DeleteEntry((J + "_GroupG-1st")), DeleteEntry((J + "_GroupG-2nd")), DeleteEntry((J + "_GroupH-1st")), DeleteEntry((J + "_GroupH-2nd")), DeleteEntry((J + "_Octo1-winner")), DeleteEntry((J + "_Octo2-winner")), DeleteEntry((J + "_Octo3-winner")), DeleteEntry((J + "_Octo4-winner")), DeleteEntry((J + "_Octo5-winner")), DeleteEntry((J + "_Octo6-winner")), DeleteEntry((J + "_Octo7-winner")), DeleteEntry((J + "_Octo8-winner")), DeleteEntry((J + "_Quarter1-winner")), DeleteEntry((J + "_Quarter2-winner")), DeleteEntry((J + "_Quarter3-winner")), DeleteEntry((J + "_Quarter4-winner")), DeleteEntry((J + "_Semi1-winner")), DeleteEntry((J + "_Semi2-winner")), DeleteEntry((J + "_Final-winner"))]
188+@Callable(t)
189+func deleteAddress (B) = {
190+ let ae = B
191+ if (y(t.callerPublicKey))
192+ then [DeleteEntry((ae + "_betted")), DeleteEntry((ae + "_height")), DeleteEntry((ae + "_betAmount")), DeleteEntry((ae + "_GroupA-1st")), DeleteEntry((ae + "_GroupA-2nd")), DeleteEntry((ae + "_GroupB-1st")), DeleteEntry((ae + "_GroupB-2nd")), DeleteEntry((ae + "_GroupC-1st")), DeleteEntry((ae + "_GroupC-2nd")), DeleteEntry((ae + "_GroupD-1st")), DeleteEntry((ae + "_GroupD-2nd")), DeleteEntry((ae + "_GroupE-1st")), DeleteEntry((ae + "_GroupE-2nd")), DeleteEntry((ae + "_GroupF-1st")), DeleteEntry((ae + "_GroupF-2nd")), DeleteEntry((ae + "_GroupG-1st")), DeleteEntry((ae + "_GroupG-2nd")), DeleteEntry((ae + "_GroupH-1st")), DeleteEntry((ae + "_GroupH-2nd")), DeleteEntry((ae + "_Octo1-winner")), DeleteEntry((ae + "_Octo2-winner")), DeleteEntry((ae + "_Octo3-winner")), DeleteEntry((ae + "_Octo4-winner")), DeleteEntry((ae + "_Octo5-winner")), DeleteEntry((ae + "_Octo6-winner")), DeleteEntry((ae + "_Octo7-winner")), DeleteEntry((ae + "_Octo8-winner")), DeleteEntry((ae + "_Quarter1-winner")), DeleteEntry((ae + "_Quarter2-winner")), DeleteEntry((ae + "_Quarter3-winner")), DeleteEntry((ae + "_Quarter4-winner")), DeleteEntry((ae + "_Semi1-winner")), DeleteEntry((ae + "_Semi2-winner")), DeleteEntry((ae + "_Final-winner"))]
141193 else throw("Only admin")
142194 }
143195
144196
145-@Verifier(S)
146-func T () = sigVerify(S.bodyBytes, S.proofs[0], S.senderPublicKey)
197+
198+@Callable(t)
199+func evalScore (B) = {
200+ let an = K(B)
201+ throw(("Score " + toString(an)))
202+ }
203+
204+
205+@Verifier(ao)
206+func ap () = sigVerify(ao.bodyBytes, ao.proofs[0], ao.senderPublicKey)
147207
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "7Tt74r8R7auTBTd6rJMA4qYr9WDWjc2SUHHSrRMw9Brs"
55
66 let b = "3NCnEUNnJXz57QWAMYnZBu3SqW4txog1XeD"
77
88 let c = "global_betAmount"
99
1010 let d = "global_deadline_h"
1111
1212 let e = 100000000
1313
1414 let f = 250
1515
1616 let g = 10000
1717
18-func h (i) = {
19- let j = i
20- if ($isInstanceOf(j, "ByteVector"))
18+let h = ["GroupA-1st", "GroupA-2nd", "GroupB-1st", "GroupB-2nd", "GroupC-1st", "GroupC-2nd", "GroupD-1st", "GroupD-2nd", "GroupE-1st", "GroupE-2nd", "GroupF-1st", "GroupF-2nd", "GroupG-1st", "GroupG-2nd", "GroupH-1st", "GroupH-2nd"]
19+
20+let i = ["Octo1-winner", "Octo2-winner", "Octo3-winner", "Octo4-winner", "Octo5-winner", "Octo6-winner", "Octo7-winner", "Octo8-winner"]
21+
22+let j = ["Quarter1-winner", "Quarter2-winner", "Quarter3-winner", "Quarter4-winner"]
23+
24+let k = ["Semi1-winner", "Semi2-winner"]
25+
26+let l = "Final-winner"
27+
28+func m (n) = {
29+ let o = n
30+ if ($isInstanceOf(o, "ByteVector"))
2131 then {
22- let k = j
23- toBase58String(k)
32+ let p = o
33+ toBase58String(p)
2434 }
2535 else "WAVES"
2636 }
2737
2838
29-func l (i) = if ((i == "WAVES"))
39+func q (n) = if ((n == "WAVES"))
3040 then unit
31- else fromBase58String(i)
41+ else fromBase58String(n)
3242
3343
34-func m (n) = {
35- let j = getInteger(this, n)
36- if ($isInstanceOf(j, "Int"))
44+func r (s) = {
45+ let o = getInteger(this, s)
46+ if ($isInstanceOf(o, "Int"))
3747 then {
38- let o = j
39- o
48+ let t = o
49+ t
4050 }
4151 else 0
4252 }
4353
4454
45-func p (n) = {
46- let j = getBoolean(this, n)
47- if ($isInstanceOf(j, "Boolean"))
55+func u (s) = {
56+ let o = getBoolean(this, s)
57+ if ($isInstanceOf(o, "Boolean"))
4858 then {
49- let k = j
50- k
59+ let p = o
60+ p
5161 }
5262 else false
5363 }
5464
5565
56-func q (n) = {
57- let j = getString(this, n)
58- if ($isInstanceOf(j, "String"))
66+func v (s) = {
67+ let o = getString(this, s)
68+ if ($isInstanceOf(o, "String"))
5969 then {
60- let r = j
61- r
70+ let w = o
71+ w
6272 }
6373 else ""
6474 }
6575
6676
67-func s (t) = (toBase58String(t) == a)
77+func x (s) = {
78+ let o = getString(addressFromStringValue(b), s)
79+ if ($isInstanceOf(o, "String"))
80+ then {
81+ let w = o
82+ w
83+ }
84+ else ""
85+ }
6886
6987
70-func u (v) = p((v + "_betted"))
88+func y (z) = (toBase58String(z) == a)
7189
7290
73-func w () = m(c)
91+func A (B) = u((B + "_betted"))
7492
7593
76-func x () = m(d)
94+func C () = r(c)
7795
7896
79-@Callable(o)
80-func setBetAmount (y) = if (s(o.callerPublicKey))
81- then [IntegerEntry(c, y)]
97+func D () = r(d)
98+
99+
100+func E (F,G) = {
101+ let H = split(G, "_")[0]
102+ (F + (if ((x(H) == v(G)))
103+ then 1
104+ else 0))
105+ }
106+
107+
108+func I (B,s) = ((B + "_") + s)
109+
110+
111+func J (B) = [I(B, h[0]), I(B, h[1]), I(B, h[2]), I(B, h[3]), I(B, h[4]), I(B, h[5]), I(B, h[6]), I(B, h[7]), I(B, h[8]), I(B, h[9]), I(B, h[10]), I(B, h[11]), I(B, h[12]), I(B, h[13]), I(B, h[14]), I(B, h[15])]
112+
113+
114+func K (B) = {
115+ let L = J(B)
116+ let M = L
117+ let N = size(M)
118+ let O = 0
119+ func P (Q,R) = if ((R >= N))
120+ then Q
121+ else E(Q, M[R])
122+
123+ func S (Q,R) = if ((R >= N))
124+ then Q
125+ else throw("List size exceeds 16")
126+
127+ S(P(P(P(P(P(P(P(P(P(P(P(P(P(P(P(P(O, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16)
128+ }
129+
130+
131+@Callable(t)
132+func setBetAmount (T) = if (y(t.callerPublicKey))
133+ then [IntegerEntry(c, T)]
82134 else throw("Only admin")
83135
84136
85137
86-@Callable(o)
87-func setDeadLine (z) = if (s(o.callerPublicKey))
88- then [IntegerEntry(d, z)]
138+@Callable(t)
139+func setDeadLine (U) = if (y(t.callerPublicKey))
140+ then [IntegerEntry(d, U)]
89141 else throw("Only admin")
90142
91143
92144
93-@Callable(o)
94-func makeBet (A,B,C,D,E,F) = {
95- let G = o.payments[0]
96- let H = G.assetId
97- let I = value(G.amount)
98- let J = toString(o.caller)
99- let K = u(J)
100- let L = x()
101- if ((L > height))
102- then if (!(K))
103- then if ((h(H) == "WAVES"))
145+@Callable(t)
146+func makeBet (V,W,X,Y,Z,aa) = {
147+ let ab = t.payments[0]
148+ let ac = ab.assetId
149+ let ad = value(ab.amount)
150+ let ae = toString(t.caller)
151+ let af = A(ae)
152+ let ag = D()
153+ if ((ag > height))
154+ then if (!(af))
155+ then if ((m(ac) == "WAVES"))
104156 then {
105- let M = w()
106- if ((M != 0))
107- then if ((I == M))
157+ let ah = C()
158+ if ((ah != 0))
159+ then if ((ad == ah))
108160 then {
109- let N = split(A, "_")
110- let O = split(B, "_")
111- let P = split(C, "_")
112- let Q = split(D, "_")
113- let R = split(E, "_")
114- if (if (if (if (if ((size(N) == 8))
115- then (size(O) == 8)
161+ let ai = split(V, "_")
162+ let aj = split(W, "_")
163+ let ak = split(X, "_")
164+ let al = split(Y, "_")
165+ let am = split(Z, "_")
166+ if (if (if (if (if ((size(ai) == 8))
167+ then (size(aj) == 8)
116168 else false)
117- then (size(P) == 8)
169+ then (size(ak) == 8)
118170 else false)
119- then (size(Q) == 4)
171+ then (size(al) == 4)
120172 else false)
121- then (size(R) == 2)
173+ then (size(am) == 2)
122174 else false)
123- then [BooleanEntry((J + "_betted"), true), IntegerEntry((J + "_height"), height), IntegerEntry((J + "_betAmount"), I), StringEntry((J + "_GroupA-1st"), N[0]), StringEntry((J + "_GroupA-2nd"), O[0]), StringEntry((J + "_GroupB-1st"), N[1]), StringEntry((J + "_GroupB-2nd"), O[1]), StringEntry((J + "_GroupC-1st"), N[2]), StringEntry((J + "_GroupC-2nd"), O[2]), StringEntry((J + "_GroupD-1st"), N[3]), StringEntry((J + "_GroupD-2nd"), O[3]), StringEntry((J + "_GroupE-1st"), N[4]), StringEntry((J + "_GroupE-2nd"), O[4]), StringEntry((J + "_GroupF-1st"), N[5]), StringEntry((J + "_GroupF-2nd"), O[5]), StringEntry((J + "_GroupG-1st"), N[6]), StringEntry((J + "_GroupG-2nd"), O[6]), StringEntry((J + "_GroupH-1st"), N[7]), StringEntry((J + "_GroupH-2nd"), O[7]), StringEntry((J + "_Octo1-winner"), P[0]), StringEntry((J + "_Octo2-winner"), P[1]), StringEntry((J + "_Octo3-winner"), P[2]), StringEntry((J + "_Octo4-winner"), P[3]), StringEntry((J + "_Octo5-winner"), P[4]), StringEntry((J + "_Octo6-winner"), P[5]), StringEntry((J + "_Octo7-winner"), P[6]), StringEntry((J + "_Octo8-winner"), P[7]), StringEntry((J + "_Quarter1-winner"), Q[0]), StringEntry((J + "_Quarter2-winner"), Q[1]), StringEntry((J + "_Quarter3-winner"), Q[2]), StringEntry((J + "_Quarter4-winner"), Q[3]), StringEntry((J + "_Semi1-winner"), R[0]), StringEntry((J + "_Semi2-winner"), R[1]), StringEntry((J + "_Final-winner"), F)]
175+ then [BooleanEntry((ae + "_betted"), true), IntegerEntry((ae + "_height"), height), IntegerEntry((ae + "_betAmount"), ad), StringEntry((ae + "_GroupA-1st"), ai[0]), StringEntry((ae + "_GroupA-2nd"), aj[0]), StringEntry((ae + "_GroupB-1st"), ai[1]), StringEntry((ae + "_GroupB-2nd"), aj[1]), StringEntry((ae + "_GroupC-1st"), ai[2]), StringEntry((ae + "_GroupC-2nd"), aj[2]), StringEntry((ae + "_GroupD-1st"), ai[3]), StringEntry((ae + "_GroupD-2nd"), aj[3]), StringEntry((ae + "_GroupE-1st"), ai[4]), StringEntry((ae + "_GroupE-2nd"), aj[4]), StringEntry((ae + "_GroupF-1st"), ai[5]), StringEntry((ae + "_GroupF-2nd"), aj[5]), StringEntry((ae + "_GroupG-1st"), ai[6]), StringEntry((ae + "_GroupG-2nd"), aj[6]), StringEntry((ae + "_GroupH-1st"), ai[7]), StringEntry((ae + "_GroupH-2nd"), aj[7]), StringEntry((ae + "_Octo1-winner"), ak[0]), StringEntry((ae + "_Octo2-winner"), ak[1]), StringEntry((ae + "_Octo3-winner"), ak[2]), StringEntry((ae + "_Octo4-winner"), ak[3]), StringEntry((ae + "_Octo5-winner"), ak[4]), StringEntry((ae + "_Octo6-winner"), ak[5]), StringEntry((ae + "_Octo7-winner"), ak[6]), StringEntry((ae + "_Octo8-winner"), ak[7]), StringEntry((ae + "_Quarter1-winner"), al[0]), StringEntry((ae + "_Quarter2-winner"), al[1]), StringEntry((ae + "_Quarter3-winner"), al[2]), StringEntry((ae + "_Quarter4-winner"), al[3]), StringEntry((ae + "_Semi1-winner"), am[0]), StringEntry((ae + "_Semi2-winner"), am[1]), StringEntry((ae + "_Final-winner"), aa)]
124176 else throw("Incorrect data arrived in arguments")
125177 }
126- else throw((("Attach exactly " + toString(M)) + " /100000000 Waves as payment"))
178+ else throw((("Attach exactly " + toString(ah)) + " /100000000 Waves as payment"))
127179 else throw("Zero betAmount from contract storage")
128180 }
129181 else throw("Only Waves is allowed as payment asset to bet")
130182 else throw("Bet already made")
131183 else throw("Betting closed")
132184 }
133185
134186
135187
136-@Callable(o)
137-func deleteBatch (v) = {
138- let J = v
139- if (s(o.callerPublicKey))
140- then [DeleteEntry((J + "_betted")), DeleteEntry((J + "_height")), DeleteEntry((J + "_betAmount")), DeleteEntry((J + "_GroupA-1st")), DeleteEntry((J + "_GroupA-2nd")), DeleteEntry((J + "_GroupB-1st")), DeleteEntry((J + "_GroupB-2nd")), DeleteEntry((J + "_GroupC-1st")), DeleteEntry((J + "_GroupC-2nd")), DeleteEntry((J + "_GroupD-1st")), DeleteEntry((J + "_GroupD-2nd")), DeleteEntry((J + "_GroupE-1st")), DeleteEntry((J + "_GroupE-2nd")), DeleteEntry((J + "_GroupF-1st")), DeleteEntry((J + "_GroupF-2nd")), DeleteEntry((J + "_GroupG-1st")), DeleteEntry((J + "_GroupG-2nd")), DeleteEntry((J + "_GroupH-1st")), DeleteEntry((J + "_GroupH-2nd")), DeleteEntry((J + "_Octo1-winner")), DeleteEntry((J + "_Octo2-winner")), DeleteEntry((J + "_Octo3-winner")), DeleteEntry((J + "_Octo4-winner")), DeleteEntry((J + "_Octo5-winner")), DeleteEntry((J + "_Octo6-winner")), DeleteEntry((J + "_Octo7-winner")), DeleteEntry((J + "_Octo8-winner")), DeleteEntry((J + "_Quarter1-winner")), DeleteEntry((J + "_Quarter2-winner")), DeleteEntry((J + "_Quarter3-winner")), DeleteEntry((J + "_Quarter4-winner")), DeleteEntry((J + "_Semi1-winner")), DeleteEntry((J + "_Semi2-winner")), DeleteEntry((J + "_Final-winner"))]
188+@Callable(t)
189+func deleteAddress (B) = {
190+ let ae = B
191+ if (y(t.callerPublicKey))
192+ then [DeleteEntry((ae + "_betted")), DeleteEntry((ae + "_height")), DeleteEntry((ae + "_betAmount")), DeleteEntry((ae + "_GroupA-1st")), DeleteEntry((ae + "_GroupA-2nd")), DeleteEntry((ae + "_GroupB-1st")), DeleteEntry((ae + "_GroupB-2nd")), DeleteEntry((ae + "_GroupC-1st")), DeleteEntry((ae + "_GroupC-2nd")), DeleteEntry((ae + "_GroupD-1st")), DeleteEntry((ae + "_GroupD-2nd")), DeleteEntry((ae + "_GroupE-1st")), DeleteEntry((ae + "_GroupE-2nd")), DeleteEntry((ae + "_GroupF-1st")), DeleteEntry((ae + "_GroupF-2nd")), DeleteEntry((ae + "_GroupG-1st")), DeleteEntry((ae + "_GroupG-2nd")), DeleteEntry((ae + "_GroupH-1st")), DeleteEntry((ae + "_GroupH-2nd")), DeleteEntry((ae + "_Octo1-winner")), DeleteEntry((ae + "_Octo2-winner")), DeleteEntry((ae + "_Octo3-winner")), DeleteEntry((ae + "_Octo4-winner")), DeleteEntry((ae + "_Octo5-winner")), DeleteEntry((ae + "_Octo6-winner")), DeleteEntry((ae + "_Octo7-winner")), DeleteEntry((ae + "_Octo8-winner")), DeleteEntry((ae + "_Quarter1-winner")), DeleteEntry((ae + "_Quarter2-winner")), DeleteEntry((ae + "_Quarter3-winner")), DeleteEntry((ae + "_Quarter4-winner")), DeleteEntry((ae + "_Semi1-winner")), DeleteEntry((ae + "_Semi2-winner")), DeleteEntry((ae + "_Final-winner"))]
141193 else throw("Only admin")
142194 }
143195
144196
145-@Verifier(S)
146-func T () = sigVerify(S.bodyBytes, S.proofs[0], S.senderPublicKey)
197+
198+@Callable(t)
199+func evalScore (B) = {
200+ let an = K(B)
201+ throw(("Score " + toString(an)))
202+ }
203+
204+
205+@Verifier(ao)
206+func ap () = sigVerify(ao.bodyBytes, ao.proofs[0], ao.senderPublicKey)
147207

github/deemru/w8io/873ac7e 
287.07 ms