tx · Hd4nsd56M7sSkqVUo4rZ7pTVBke6HA8HbbtPYT6ZWskz

3N5mwuqT6dXpbqwT5VKDXzGJJ6c14rKqxS7:  -0.01400000 Waves

2019.10.06 11:33 [707678] smart account 3N5mwuqT6dXpbqwT5VKDXzGJJ6c14rKqxS7 > SELF 0.00000000 Waves

{ "type": 13, "id": "Hd4nsd56M7sSkqVUo4rZ7pTVBke6HA8HbbtPYT6ZWskz", "fee": 1400000, "feeAssetId": null, "timestamp": 1570350796652, "version": 1, "sender": "3N5mwuqT6dXpbqwT5VKDXzGJJ6c14rKqxS7", "senderPublicKey": "Gxi9GKByT2CYHqPr6ZTohMDmHRGAgE8uBM6R4QXfvtxK", "proofs": [ "5BMoxHJWKeRwTSQE8NrJmtVwpeoNAG5zLGpQEeSgiWeEXRvpkoKUqXewdniDN39iRM6pn5LTwR9HPhoK1fk3SrFN" ], "script": "base64:AAIDAAAAAAAAABMIARIDCgEIEgMKAQESAwoBARIAAAAADQAAAAAHUlVOTklORwIAAAAHUlVOTklORwAAAAAGQ0xPU0VEAgAAAAZDTE9TRUQAAAAACENBTkNFTEVEAgAAAAhDQU5DRUxFRAAAAAAJREFQUE9XTkVSAgAAACMzTjVtd3VxVDZkWHBicXdUNVZLRFh6R0pKNmMxNHJLcXhTNwAAAAAMT1JBQ0xFV0FMTEVUAgAAACMzTkFjb2VXZFVUV244Y3NYSlBHNDd2MUZqdGpjZnF4YjV0dQAAAAAOV0FWRVNLSVRXQUxMRVQCAAAAIzNNcVBwYldQUnNaRm9UOVg3NHFXb2NVNEJweXBHRVBoaUNuAAAAAAVXQVZFUwIAAAAFV0FWRVMAAAAABE5PTkUCAAAABE5PTkUAAAAAA0ZFRQAAAAAAAA27oAAAAAADV0xUAQAAACBdzVgyIDG1TTrr2IC+hZgKEiTPyt49R9i8wN0ZNQ6rqgEAAAALZ2V0TnVtQnlLZXkAAAABAAAAA2tleQQAAAADbnVtBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABQAAAANudW0BAAAAC2dldFN0ckJ5S2V5AAAAAQAAAANrZXkEAAAAA3N0cgQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQUAAAAETk9ORQUAAAADc3RyAQAAABpnZXRFeHRXQVZFU1VTREN1cnJlbmN5UmF0ZQAAAAAEAAAADW9yYWNsZUFkZHJlc3MJAQAAAAdleHRyYWN0AAAAAQkBAAAAEWFkZHJlc3NGcm9tU3RyaW5nAAAAAQUAAAAMT1JBQ0xFV0FMTEVUBAAAABRXQVZFU1VTREN1cnJlbmN5UmF0ZQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAA1vcmFjbGVBZGRyZXNzAgAAAAt3YXZlc191c2RfMgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABQAAABRXQVZFU1VTREN1cnJlbmN5UmF0ZQAAAAQAAAABaQEAAAAQc2V0Q29udGVzdFN0YXR1cwAAAAEAAAANY29udGVzdFN0YXR1cwQAAAAHYWNjb3VudAkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAABFjb250ZXN0Q3Vyck51bWJlcgkBAAAAC2dldE51bUJ5S2V5AAAAAQIAAAAVY29udGVzdF9jdXJyZW50bnVtYmVyAwkBAAAAAiE9AAAAAgUAAAAHYWNjb3VudAUAAAAJREFQUE9XTkVSCQAAAgAAAAECAAAAJ09ubHkgZEFQUCBPd25lciBjYW4gc2V0IENvbnRlc3QgU3RhdHVzLgMDCQEAAAACIT0AAAACBQAAAA1jb250ZXN0U3RhdHVzBQAAAAhDQU5DRUxFRAkBAAAAAiE9AAAAAgUAAAANY29udGVzdFN0YXR1cwUAAAAGQ0xPU0VEBwkAAAIAAAABCQABLAAAAAICAAAAEEludmFsaWQgc3RhdHVzOiAFAAAADWNvbnRlc3RTdGF0dXMJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAAHX3N0YXR1cwUAAAANY29udGVzdFN0YXR1cwUAAAADbmlsAAAAAWkBAAAAF3NldENvbnRlc3RDb25maWd1cmF0aW9uAAAAAQAAAA5jb250ZXN0QmV0Q29zdAQAAAAHYWNjb3VudAkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAABFjb250ZXN0Q3Vyck51bWJlcgkBAAAAC2dldE51bUJ5S2V5AAAAAQIAAAAVY29udGVzdF9jdXJyZW50bnVtYmVyBAAAABFjb250ZXN0Q3VyclN0YXR1cwkBAAAAC2dldFN0ckJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAdfc3RhdHVzBAAAABBjb250ZXN0TmV3TnVtYmVyCQAAZAAAAAIFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAAAAAAAAAAABBAAAAAdiYWxhbmNlCQEAAAAMd2F2ZXNCYWxhbmNlAAAAAQUAAAAEdGhpcwMJAQAAAAIhPQAAAAIFAAAAB2FjY291bnQFAAAACURBUFBPV05FUgkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAADdPbmx5IGRBUFAgT3duZXIgY2FuIENvbmZpZ3VyZSBDb250ZXN0LiBDYWxsZXIgYWNjb3VudDogBQAAAAdhY2NvdW50AgAAAA0gZGFwcCBvd25lcjogBQAAAAlEQVBQT1dORVIDCQAAAAAAAAIFAAAAEWNvbnRlc3RDdXJyU3RhdHVzBQAAAAdSVU5OSU5HCQAAAgAAAAEJAAEsAAAAAgIAAABAWW91IGNhbm5vdCBjb25maWd1cmUgYSBuZXcgQ29udGVzdCB3aGlsZSBvbGQgQ29udGVzdCBzdGF0dXMgaXM6IAUAAAARY29udGVzdEN1cnJTdGF0dXMEAAAAE2NvbnRlc3RGaW5pc2hIZWlnaHQJAABkAAAAAgUAAAAGaGVpZ2h0CQAAaAAAAAIAAAAAAAAAAAYAAAAAAAAABaAJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAFWNvbnRlc3RfY3VycmVudG51bWJlcgUAAAAQY29udGVzdE5ld051bWJlcgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEGNvbnRlc3ROZXdOdW1iZXICAAAADV9maW5pc2hoZWlnaHQFAAAAE2NvbnRlc3RGaW5pc2hIZWlnaHQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABBjb250ZXN0TmV3TnVtYmVyAgAAAAdfc3RhdHVzBQAAAAdSVU5OSU5HCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAAQY29udGVzdE5ld051bWJlcgIAAAALX2JldGNvdW50ZXIAAAAAAAAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABBjb250ZXN0TmV3TnVtYmVyAgAAAAhfYmV0Y29zdAUAAAAOY29udGVzdEJldENvc3QFAAAAA25pbAAAAAFpAQAAAANiZXQAAAABAAAADWN1cnJlbmN5VmFsdWUEAAAAB2FjY291bnQJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAADcG10CQEAAAAHZXh0cmFjdAAAAAEIBQAAAAFpAAAAB3BheW1lbnQEAAAAEWNvbnRlc3RDdXJyTnVtYmVyCQEAAAALZ2V0TnVtQnlLZXkAAAABAgAAABVjb250ZXN0X2N1cnJlbnRudW1iZXIEAAAAEmNvbnRlc3RTdGFydEhlaWdodAkBAAAAC2dldE51bUJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAxfc3RhcnRoZWlnaHQEAAAAE2NvbnRlc3RGaW5pc2hIZWlnaHQJAQAAAAtnZXROdW1CeUtleQAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAANX2ZpbmlzaGhlaWdodAQAAAARY29udGVzdEN1cnJTdGF0dXMJAQAAAAtnZXRTdHJCeUtleQAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAAHX3N0YXR1cwQAAAASY29udGVzdEN1cnJCZXRDb3N0CQEAAAALZ2V0TnVtQnlLZXkAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAARY29udGVzdEN1cnJOdW1iZXICAAAACF9iZXRjb3N0BAAAAA1jb250ZXN0U3RhdHVzCQEAAAALZ2V0U3RyQnlLZXkAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAARY29udGVzdEN1cnJOdW1iZXICAAAAB19z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", "chainId": 84, "height": 707678, "spentComplexity": 0 } View: original | compacted Prev: Hb9tEdbbF85RGitmrNEmM9unQqdARE2gpmBQmGFgSm9x Next: 3ehJmDTy3GShMy9jZw425Su9sSXL9jcsC4PgizABTsSG Diff:
OldNewDifferences
1111
1212 let e = "3NAcoeWdUTWn8csXJPG47v1Fjtjcfqxb5tu"
1313
14-let f = "3MpCbDDjkSrfS1XkPpm71iZj5DQ1RpBRRht"
14+let f = "3MqPpbWPRsZFoT9X74qWocU4BpypGEPhiCn"
1515
16-let g = "3MqPpbWPRsZFoT9X74qWocU4BpypGEPhiCn"
16+let g = "WAVES"
1717
18-let h = "3N1xQeQcsrY8Urm4RdrmL2dfoZAP4ULpH1S"
18+let h = "NONE"
1919
20-let i = "WAVES"
20+let i = 900000
2121
22-let j = "NONE"
22+let j = base58'7KAXNTswj6947a6cVpGhVrh1utWpLcjwf8AFpWCtuMT7'
2323
24-let k = 900000
25-
26-let l = base58'7KAXNTswj6947a6cVpGhVrh1utWpLcjwf8AFpWCtuMT7'
27-
28-func m (n) = {
29- let o = {
30- let p = getInteger(this, n)
31- if ($isInstanceOf(p, "Int"))
24+func k (l) = {
25+ let m = {
26+ let n = getInteger(this, l)
27+ if ($isInstanceOf(n, "Int"))
3228 then {
33- let q = p
34- q
29+ let o = n
30+ o
3531 }
3632 else 0
3733 }
38- o
34+ m
3935 }
4036
4137
42-func r (n) = {
43- let s = {
44- let p = getString(this, n)
45- if ($isInstanceOf(p, "String"))
38+func p (l) = {
39+ let q = {
40+ let n = getString(this, l)
41+ if ($isInstanceOf(n, "String"))
4642 then {
47- let q = p
48- q
43+ let o = n
44+ o
4945 }
50- else j
46+ else h
5147 }
52- s
48+ q
5349 }
5450
5551
56-func t () = {
57- let u = extract(addressFromString(e))
58- let v = {
59- let p = getInteger(u, "waves_usd_2")
60- if ($isInstanceOf(p, "Int"))
52+func r () = {
53+ let s = extract(addressFromString(e))
54+ let t = {
55+ let n = getInteger(s, "waves_usd_2")
56+ if ($isInstanceOf(n, "Int"))
6157 then {
62- let q = p
63- q
58+ let o = n
59+ o
6460 }
6561 else 0
6662 }
67- v
63+ t
6864 }
6965
7066
71-@Callable(w)
72-func setContestStatus (x) = {
73- let y = toBase58String(w.caller.bytes)
74- let z = m("contest_currentnumber")
75- if ((y != d))
67+@Callable(u)
68+func setContestStatus (v) = {
69+ let w = toBase58String(u.caller.bytes)
70+ let x = k("contest_currentnumber")
71+ if ((w != d))
7672 then throw("Only dAPP Owner can set Contest Status.")
77- else if (if ((x != c))
78- then (x != b)
73+ else if (if ((v != c))
74+ then (v != b)
7975 else false)
80- then throw(("Invalid status: " + x))
81- else WriteSet([DataEntry((("contest_" + toString(z)) + "_status"), x)])
76+ then throw(("Invalid status: " + v))
77+ else WriteSet([DataEntry((("contest_" + toString(x)) + "_status"), v)])
8278 }
8379
8480
8581
86-@Callable(w)
87-func setContestConfiguration (A) = {
88- let y = toBase58String(w.caller.bytes)
89- let z = m("contest_currentnumber")
90- let B = r((("contest_" + toString(z)) + "_status"))
91- let C = (z + 1)
92- let D = wavesBalance(this)
93- if ((y != d))
94- then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + y) + " dapp owner: ") + d))
95- else if ((B == a))
96- then throw(("You cannot configure a new Contest while old Contest status is: " + B))
82+@Callable(u)
83+func setContestConfiguration (y) = {
84+ let w = toBase58String(u.caller.bytes)
85+ let x = k("contest_currentnumber")
86+ let z = p((("contest_" + toString(x)) + "_status"))
87+ let A = (x + 1)
88+ let B = wavesBalance(this)
89+ if ((w != d))
90+ then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + w) + " dapp owner: ") + d))
91+ else if ((z == a))
92+ then throw(("You cannot configure a new Contest while old Contest status is: " + z))
9793 else {
98- let E = (height + (6 * 1440))
99- WriteSet([DataEntry("contest_currentnumber", C), DataEntry((("contest_" + toString(C)) + "_finishheight"), E), DataEntry((("contest_" + toString(C)) + "_status"), a), DataEntry((("contest_" + toString(C)) + "_betcounter"), 0), DataEntry((("contest_" + toString(C)) + "_betcost"), A)])
94+ let C = (height + (6 * 1440))
95+ WriteSet([DataEntry("contest_currentnumber", A), DataEntry((("contest_" + toString(A)) + "_finishheight"), C), DataEntry((("contest_" + toString(A)) + "_status"), a), DataEntry((("contest_" + toString(A)) + "_betcounter"), 0), DataEntry((("contest_" + toString(A)) + "_betcost"), y)])
10096 }
10197 }
10298
10399
104100
105-@Callable(w)
106-func bet (F) = {
107- let y = toBase58String(w.caller.bytes)
108- let G = extract(w.payment)
109- let z = m("contest_currentnumber")
110- let H = m((("contest_" + toString(z)) + "_startheight"))
111- let E = m((("contest_" + toString(z)) + "_finishheight"))
112- let B = r((("contest_" + toString(z)) + "_status"))
113- let I = m((("contest_" + toString(z)) + "_betcost"))
114- let x = r((("contest_" + toString(z)) + "_status"))
115- let J = m((((("contest_" + toString(z)) + "_") + y) + "_bets"))
116- let K = r(((("bet_" + toString(z)) + "_") + toString(F)))
117- if ((height > (E - (2 * 1440))))
101+@Callable(u)
102+func bet (D) = {
103+ let w = toBase58String(u.caller.bytes)
104+ let E = extract(u.payment)
105+ let x = k("contest_currentnumber")
106+ let F = k((("contest_" + toString(x)) + "_startheight"))
107+ let C = k((("contest_" + toString(x)) + "_finishheight"))
108+ let z = p((("contest_" + toString(x)) + "_status"))
109+ let G = k((("contest_" + toString(x)) + "_betcost"))
110+ let v = p((("contest_" + toString(x)) + "_status"))
111+ let H = k((((("contest_" + toString(x)) + "_") + w) + "_bets"))
112+ let I = p(((("bet_" + toString(x)) + "_") + toString(D)))
113+ if ((height > (C - (2 * 1440))))
118114 then throw("You cannot bet anymore at this height.")
119- else if ((B != a))
120- then throw(("Invalid status: you cannot bet now, contest status is: " + B))
121- else if (if ((G.assetId != l))
115+ else if ((z != a))
116+ then throw(("Invalid status: you cannot bet now, contest status is: " + z))
117+ else if (if ((E.assetId != j))
122118 then true
123- else (G.amount != I))
124- then throw(((("You must pay at least: " + toString(I)) + " WLT to bet. You paid: ") + toString(G.amount)))
125- else if (if ((K != j))
126- then (K != y)
119+ else (E.amount != G))
120+ then throw(((("You must pay at least: " + toString(G)) + " WLT to bet. You paid: ") + toString(E.amount)))
121+ else if (if ((I != h))
122+ then (I != w)
127123 else false)
128- then throw((("Another user: " + K) + " did bet already on this rate."))
129- else if ((J >= 5))
124+ then throw((("Another user: " + I) + " did bet already on this rate."))
125+ else if ((H >= 5))
130126 then throw("You can do at most 5 bets.")
131- else WriteSet([DataEntry(((("bet_" + toString(z)) + "_") + toString(F)), y), DataEntry((((("contest_" + toString(z)) + "_") + y) + "_bets"), (J + 1))])
127+ else WriteSet([DataEntry(((("bet_" + toString(x)) + "_") + toString(D)), w), DataEntry((((("contest_" + toString(x)) + "_") + w) + "_bets"), (H + 1))])
132128 }
133129
134130
135131
136-@Callable(w)
132+@Callable(u)
137133 func closecontest () = {
138- let L = t()
139- let z = m("contest_currentnumber")
140- let M = r(((("bet_" + toString(z)) + "_") + toString(L)))
141- let E = m((("contest_" + toString(z)) + "_finishheight"))
142- let y = toBase58String(w.caller.bytes)
143- let D = wavesBalance(this)
144- let B = r((("contest_" + toString(z)) + "_status"))
145- if ((y != d))
134+ let J = r()
135+ let x = k("contest_currentnumber")
136+ let K = p(((("bet_" + toString(x)) + "_") + toString(J)))
137+ let C = k((("contest_" + toString(x)) + "_finishheight"))
138+ let w = toBase58String(u.caller.bytes)
139+ let B = wavesBalance(this)
140+ let z = p((("contest_" + toString(x)) + "_status"))
141+ if ((w != d))
146142 then throw("Only dAPP Owner can Close Contest.")
147- else if ((E > height))
148- then throw(((("account: " + y) + ": Cannot close the contest before height:") + toString(E)))
149- else if ((B != a))
150- then throw(("Cannot close a contest in status: " + B))
151- else if ((M != j))
143+ else if ((C > height))
144+ then throw(((("account: " + w) + ": Cannot close the contest before height:") + toString(C)))
145+ else if ((z != a))
146+ then throw(("Cannot close a contest in status: " + z))
147+ else if ((K != h))
152148 then {
153- let N = ((assetBalance(this, l) * 5) / 100)
154- let O = ((assetBalance(this, l) * 80) / 100)
155- let P = TransferSet([ScriptTransfer(extract(addressFromString(M)), O, unit), ScriptTransfer(extract(addressFromString(e)), N, l), ScriptTransfer(extract(addressFromString(g)), N, l), ScriptTransfer(extract(addressFromString(h)), N, l)])
156- ScriptResult(WriteSet([DataEntry((("contest_" + toString(z)) + "_status"), b), DataEntry((("contest_" + toString(z)) + "_winner"), M), DataEntry((("contest_" + toString(z)) + "_rateheight"), height), DataEntry((("contest_" + toString(z)) + "_currencyrate"), L), DataEntry((("contest_" + toString(z)) + "_prize"), O)]), P)
149+ let L = ((assetBalance(this, j) * 1) / 100)
150+ let M = ((assetBalance(this, j) * 4) / 100)
151+ let N = ((assetBalance(this, j) * 90) / 100)
152+ let O = TransferSet([ScriptTransfer(extract(addressFromString(K)), N, unit), ScriptTransfer(extract(addressFromString(e)), L, j), ScriptTransfer(extract(addressFromString(f)), M, j)])
153+ ScriptResult(WriteSet([DataEntry((("contest_" + toString(x)) + "_status"), b), DataEntry((("contest_" + toString(x)) + "_winner"), K), DataEntry((("contest_" + toString(x)) + "_rateheight"), height), DataEntry((("contest_" + toString(x)) + "_currencyrate"), J), DataEntry((("contest_" + toString(x)) + "_prize"), N)]), O)
157154 }
158- else WriteSet([DataEntry((("contest_" + toString(z)) + "_status"), b), DataEntry((("contest_" + toString(z)) + "_winner"), M), DataEntry((("contest_" + toString(z)) + "_currencyrate"), L), DataEntry((("contest_" + toString(z)) + "_prize"), 0)])
155+ else WriteSet([DataEntry((("contest_" + toString(x)) + "_status"), b), DataEntry((("contest_" + toString(x)) + "_winner"), K), DataEntry((("contest_" + toString(x)) + "_currencyrate"), J), DataEntry((("contest_" + toString(x)) + "_prize"), 0)])
159156 }
160157
161158
162-@Verifier(Q)
163-func R () = {
164- let p = Q
165- if (if ($isInstanceOf(p, "SetScriptTransaction"))
159+@Verifier(P)
160+func Q () = {
161+ let n = P
162+ if (if ($isInstanceOf(n, "SetScriptTransaction"))
166163 then true
167- else $isInstanceOf(p, "DataTransaction"))
168- then sigVerify(Q.bodyBytes, Q.proofs[0], Q.senderPublicKey)
169- else if ($isInstanceOf(p, "InvokeScriptTransaction"))
164+ else $isInstanceOf(n, "DataTransaction"))
165+ then sigVerify(P.bodyBytes, P.proofs[0], P.senderPublicKey)
166+ else if ($isInstanceOf(n, "InvokeScriptTransaction"))
170167 then true
171168 else true
172169 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "RUNNING"
55
66 let b = "CLOSED"
77
88 let c = "CANCELED"
99
1010 let d = "3N5mwuqT6dXpbqwT5VKDXzGJJ6c14rKqxS7"
1111
1212 let e = "3NAcoeWdUTWn8csXJPG47v1Fjtjcfqxb5tu"
1313
14-let f = "3MpCbDDjkSrfS1XkPpm71iZj5DQ1RpBRRht"
14+let f = "3MqPpbWPRsZFoT9X74qWocU4BpypGEPhiCn"
1515
16-let g = "3MqPpbWPRsZFoT9X74qWocU4BpypGEPhiCn"
16+let g = "WAVES"
1717
18-let h = "3N1xQeQcsrY8Urm4RdrmL2dfoZAP4ULpH1S"
18+let h = "NONE"
1919
20-let i = "WAVES"
20+let i = 900000
2121
22-let j = "NONE"
22+let j = base58'7KAXNTswj6947a6cVpGhVrh1utWpLcjwf8AFpWCtuMT7'
2323
24-let k = 900000
25-
26-let l = base58'7KAXNTswj6947a6cVpGhVrh1utWpLcjwf8AFpWCtuMT7'
27-
28-func m (n) = {
29- let o = {
30- let p = getInteger(this, n)
31- if ($isInstanceOf(p, "Int"))
24+func k (l) = {
25+ let m = {
26+ let n = getInteger(this, l)
27+ if ($isInstanceOf(n, "Int"))
3228 then {
33- let q = p
34- q
29+ let o = n
30+ o
3531 }
3632 else 0
3733 }
38- o
34+ m
3935 }
4036
4137
42-func r (n) = {
43- let s = {
44- let p = getString(this, n)
45- if ($isInstanceOf(p, "String"))
38+func p (l) = {
39+ let q = {
40+ let n = getString(this, l)
41+ if ($isInstanceOf(n, "String"))
4642 then {
47- let q = p
48- q
43+ let o = n
44+ o
4945 }
50- else j
46+ else h
5147 }
52- s
48+ q
5349 }
5450
5551
56-func t () = {
57- let u = extract(addressFromString(e))
58- let v = {
59- let p = getInteger(u, "waves_usd_2")
60- if ($isInstanceOf(p, "Int"))
52+func r () = {
53+ let s = extract(addressFromString(e))
54+ let t = {
55+ let n = getInteger(s, "waves_usd_2")
56+ if ($isInstanceOf(n, "Int"))
6157 then {
62- let q = p
63- q
58+ let o = n
59+ o
6460 }
6561 else 0
6662 }
67- v
63+ t
6864 }
6965
7066
71-@Callable(w)
72-func setContestStatus (x) = {
73- let y = toBase58String(w.caller.bytes)
74- let z = m("contest_currentnumber")
75- if ((y != d))
67+@Callable(u)
68+func setContestStatus (v) = {
69+ let w = toBase58String(u.caller.bytes)
70+ let x = k("contest_currentnumber")
71+ if ((w != d))
7672 then throw("Only dAPP Owner can set Contest Status.")
77- else if (if ((x != c))
78- then (x != b)
73+ else if (if ((v != c))
74+ then (v != b)
7975 else false)
80- then throw(("Invalid status: " + x))
81- else WriteSet([DataEntry((("contest_" + toString(z)) + "_status"), x)])
76+ then throw(("Invalid status: " + v))
77+ else WriteSet([DataEntry((("contest_" + toString(x)) + "_status"), v)])
8278 }
8379
8480
8581
86-@Callable(w)
87-func setContestConfiguration (A) = {
88- let y = toBase58String(w.caller.bytes)
89- let z = m("contest_currentnumber")
90- let B = r((("contest_" + toString(z)) + "_status"))
91- let C = (z + 1)
92- let D = wavesBalance(this)
93- if ((y != d))
94- then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + y) + " dapp owner: ") + d))
95- else if ((B == a))
96- then throw(("You cannot configure a new Contest while old Contest status is: " + B))
82+@Callable(u)
83+func setContestConfiguration (y) = {
84+ let w = toBase58String(u.caller.bytes)
85+ let x = k("contest_currentnumber")
86+ let z = p((("contest_" + toString(x)) + "_status"))
87+ let A = (x + 1)
88+ let B = wavesBalance(this)
89+ if ((w != d))
90+ then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + w) + " dapp owner: ") + d))
91+ else if ((z == a))
92+ then throw(("You cannot configure a new Contest while old Contest status is: " + z))
9793 else {
98- let E = (height + (6 * 1440))
99- WriteSet([DataEntry("contest_currentnumber", C), DataEntry((("contest_" + toString(C)) + "_finishheight"), E), DataEntry((("contest_" + toString(C)) + "_status"), a), DataEntry((("contest_" + toString(C)) + "_betcounter"), 0), DataEntry((("contest_" + toString(C)) + "_betcost"), A)])
94+ let C = (height + (6 * 1440))
95+ WriteSet([DataEntry("contest_currentnumber", A), DataEntry((("contest_" + toString(A)) + "_finishheight"), C), DataEntry((("contest_" + toString(A)) + "_status"), a), DataEntry((("contest_" + toString(A)) + "_betcounter"), 0), DataEntry((("contest_" + toString(A)) + "_betcost"), y)])
10096 }
10197 }
10298
10399
104100
105-@Callable(w)
106-func bet (F) = {
107- let y = toBase58String(w.caller.bytes)
108- let G = extract(w.payment)
109- let z = m("contest_currentnumber")
110- let H = m((("contest_" + toString(z)) + "_startheight"))
111- let E = m((("contest_" + toString(z)) + "_finishheight"))
112- let B = r((("contest_" + toString(z)) + "_status"))
113- let I = m((("contest_" + toString(z)) + "_betcost"))
114- let x = r((("contest_" + toString(z)) + "_status"))
115- let J = m((((("contest_" + toString(z)) + "_") + y) + "_bets"))
116- let K = r(((("bet_" + toString(z)) + "_") + toString(F)))
117- if ((height > (E - (2 * 1440))))
101+@Callable(u)
102+func bet (D) = {
103+ let w = toBase58String(u.caller.bytes)
104+ let E = extract(u.payment)
105+ let x = k("contest_currentnumber")
106+ let F = k((("contest_" + toString(x)) + "_startheight"))
107+ let C = k((("contest_" + toString(x)) + "_finishheight"))
108+ let z = p((("contest_" + toString(x)) + "_status"))
109+ let G = k((("contest_" + toString(x)) + "_betcost"))
110+ let v = p((("contest_" + toString(x)) + "_status"))
111+ let H = k((((("contest_" + toString(x)) + "_") + w) + "_bets"))
112+ let I = p(((("bet_" + toString(x)) + "_") + toString(D)))
113+ if ((height > (C - (2 * 1440))))
118114 then throw("You cannot bet anymore at this height.")
119- else if ((B != a))
120- then throw(("Invalid status: you cannot bet now, contest status is: " + B))
121- else if (if ((G.assetId != l))
115+ else if ((z != a))
116+ then throw(("Invalid status: you cannot bet now, contest status is: " + z))
117+ else if (if ((E.assetId != j))
122118 then true
123- else (G.amount != I))
124- then throw(((("You must pay at least: " + toString(I)) + " WLT to bet. You paid: ") + toString(G.amount)))
125- else if (if ((K != j))
126- then (K != y)
119+ else (E.amount != G))
120+ then throw(((("You must pay at least: " + toString(G)) + " WLT to bet. You paid: ") + toString(E.amount)))
121+ else if (if ((I != h))
122+ then (I != w)
127123 else false)
128- then throw((("Another user: " + K) + " did bet already on this rate."))
129- else if ((J >= 5))
124+ then throw((("Another user: " + I) + " did bet already on this rate."))
125+ else if ((H >= 5))
130126 then throw("You can do at most 5 bets.")
131- else WriteSet([DataEntry(((("bet_" + toString(z)) + "_") + toString(F)), y), DataEntry((((("contest_" + toString(z)) + "_") + y) + "_bets"), (J + 1))])
127+ else WriteSet([DataEntry(((("bet_" + toString(x)) + "_") + toString(D)), w), DataEntry((((("contest_" + toString(x)) + "_") + w) + "_bets"), (H + 1))])
132128 }
133129
134130
135131
136-@Callable(w)
132+@Callable(u)
137133 func closecontest () = {
138- let L = t()
139- let z = m("contest_currentnumber")
140- let M = r(((("bet_" + toString(z)) + "_") + toString(L)))
141- let E = m((("contest_" + toString(z)) + "_finishheight"))
142- let y = toBase58String(w.caller.bytes)
143- let D = wavesBalance(this)
144- let B = r((("contest_" + toString(z)) + "_status"))
145- if ((y != d))
134+ let J = r()
135+ let x = k("contest_currentnumber")
136+ let K = p(((("bet_" + toString(x)) + "_") + toString(J)))
137+ let C = k((("contest_" + toString(x)) + "_finishheight"))
138+ let w = toBase58String(u.caller.bytes)
139+ let B = wavesBalance(this)
140+ let z = p((("contest_" + toString(x)) + "_status"))
141+ if ((w != d))
146142 then throw("Only dAPP Owner can Close Contest.")
147- else if ((E > height))
148- then throw(((("account: " + y) + ": Cannot close the contest before height:") + toString(E)))
149- else if ((B != a))
150- then throw(("Cannot close a contest in status: " + B))
151- else if ((M != j))
143+ else if ((C > height))
144+ then throw(((("account: " + w) + ": Cannot close the contest before height:") + toString(C)))
145+ else if ((z != a))
146+ then throw(("Cannot close a contest in status: " + z))
147+ else if ((K != h))
152148 then {
153- let N = ((assetBalance(this, l) * 5) / 100)
154- let O = ((assetBalance(this, l) * 80) / 100)
155- let P = TransferSet([ScriptTransfer(extract(addressFromString(M)), O, unit), ScriptTransfer(extract(addressFromString(e)), N, l), ScriptTransfer(extract(addressFromString(g)), N, l), ScriptTransfer(extract(addressFromString(h)), N, l)])
156- ScriptResult(WriteSet([DataEntry((("contest_" + toString(z)) + "_status"), b), DataEntry((("contest_" + toString(z)) + "_winner"), M), DataEntry((("contest_" + toString(z)) + "_rateheight"), height), DataEntry((("contest_" + toString(z)) + "_currencyrate"), L), DataEntry((("contest_" + toString(z)) + "_prize"), O)]), P)
149+ let L = ((assetBalance(this, j) * 1) / 100)
150+ let M = ((assetBalance(this, j) * 4) / 100)
151+ let N = ((assetBalance(this, j) * 90) / 100)
152+ let O = TransferSet([ScriptTransfer(extract(addressFromString(K)), N, unit), ScriptTransfer(extract(addressFromString(e)), L, j), ScriptTransfer(extract(addressFromString(f)), M, j)])
153+ ScriptResult(WriteSet([DataEntry((("contest_" + toString(x)) + "_status"), b), DataEntry((("contest_" + toString(x)) + "_winner"), K), DataEntry((("contest_" + toString(x)) + "_rateheight"), height), DataEntry((("contest_" + toString(x)) + "_currencyrate"), J), DataEntry((("contest_" + toString(x)) + "_prize"), N)]), O)
157154 }
158- else WriteSet([DataEntry((("contest_" + toString(z)) + "_status"), b), DataEntry((("contest_" + toString(z)) + "_winner"), M), DataEntry((("contest_" + toString(z)) + "_currencyrate"), L), DataEntry((("contest_" + toString(z)) + "_prize"), 0)])
155+ else WriteSet([DataEntry((("contest_" + toString(x)) + "_status"), b), DataEntry((("contest_" + toString(x)) + "_winner"), K), DataEntry((("contest_" + toString(x)) + "_currencyrate"), J), DataEntry((("contest_" + toString(x)) + "_prize"), 0)])
159156 }
160157
161158
162-@Verifier(Q)
163-func R () = {
164- let p = Q
165- if (if ($isInstanceOf(p, "SetScriptTransaction"))
159+@Verifier(P)
160+func Q () = {
161+ let n = P
162+ if (if ($isInstanceOf(n, "SetScriptTransaction"))
166163 then true
167- else $isInstanceOf(p, "DataTransaction"))
168- then sigVerify(Q.bodyBytes, Q.proofs[0], Q.senderPublicKey)
169- else if ($isInstanceOf(p, "InvokeScriptTransaction"))
164+ else $isInstanceOf(n, "DataTransaction"))
165+ then sigVerify(P.bodyBytes, P.proofs[0], P.senderPublicKey)
166+ else if ($isInstanceOf(n, "InvokeScriptTransaction"))
170167 then true
171168 else true
172169 }
173170

github/deemru/w8io/169f3d6 
83.23 ms