tx · 8dcxaEKqpyawCoPWdetifqJxWd3nmcBuJ6jGXGRx6UJy

3N7Wiiso7vo69pqWfLtpzT3tbzMUGahqpgo:  -0.01400000 Waves

2019.08.16 12:14 [633440] smart account 3N7Wiiso7vo69pqWfLtpzT3tbzMUGahqpgo > SELF 0.00000000 Waves

{ "type": 13, "id": "8dcxaEKqpyawCoPWdetifqJxWd3nmcBuJ6jGXGRx6UJy", "fee": 1400000, "feeAssetId": null, "timestamp": 1565946728477, "version": 1, "sender": "3N7Wiiso7vo69pqWfLtpzT3tbzMUGahqpgo", "senderPublicKey": "5GQSFwNMkJFTT3FeLT3KENqoSr42yiJP3Av5qAYq1F7f", "proofs": [ "s3QkCtsgbj2qiWn1RV9CvJfeynVC4jk1AepmWnmibdcpzgbk5DnSUQjQ8wBjn24ALrTpLHbQhwQ4JUNRSkTKK9X" ], "script": "base64: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BQAAAA1jb250ZXN0U3RhdHVzBQAAAANuaWwAAAABaQEAAAAXc2V0Q29udGVzdENvbmZpZ3VyYXRpb24AAAACAAAADmN1cnJlbmN5VGlja2VyAAAAEmNvbnRlc3RTdGFydEhlaWdodAQAAAAHYWNjb3VudAkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAABFjb250ZXN0Q3Vyck51bWJlcgkBAAAAC2dldE51bUJ5S2V5AAAAAQIAAAAVY29udGVzdF9jdXJyZW50bnVtYmVyBAAAABFjb250ZXN0Q3VyclN0YXR1cwkBAAAAC2dldFN0ckJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAdfc3RhdHVzBAAAABBjb250ZXN0TmV3TnVtYmVyCQAAZAAAAAIFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAAAAAAAAAAABAwkBAAAAAiE9AAAAAgUAAAAHYWNjb3VudAUAAAAJREFQUE9XTkVSCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAN09ubHkgZEFQUCBPd25lciBjYW4gQ29uZmlndXJlIENvbnRlc3QuIENhbGxlciBhY2NvdW50OiAFAAAAB2FjY291bnQCAAAADSBkYXBwIG93bmVyOiAFAAAACURBUFBPV05FUgMJAABnAAAAAgUAAAAGaGVpZ2h0BQAAABJjb250ZXN0U3RhcnRIZWlnaHQJAAACAAAAAQkAASwAAAACAgAAAD1TdGFydCBIZWlnaHQgbXVzdCBiZSBncmVhdGVyIHRoYW4gY3VycmVudCBCbG9ja2NoYWluIGhlaWdodDogCQABpAAAAAEFAAAABmhlaWdodAMJAAAAAAAAAgUAAAARY29udGVzdEN1cnJTdGF0dXMFAAAAB1JVTk5JTkcJAAACAAAAAQkAASwAAAACAgAAAEBZb3UgY2Fubm90IGNvbmZpZ3VyZSBhIG5ldyBDb250ZXN0IHdoaWxlIG9sZCBDb250ZXN0IHN0YXR1cyBpczogBQAAABFjb250ZXN0Q3VyclN0YXR1cwMJAQAAAAIhPQAAAAIFAAAADmN1cnJlbmN5VGlja2VyBQAAAAVXQVZFUwkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAgZEFQUCBkb2VzIG5vdCBzdXBwb3J0IGN1cnJlbmN5OiAFAAAADmN1cnJlbmN5VGlja2VyAgAAAAUgeWV0LgQAAAATY29udGVzdEZpbmlzaEhlaWdodAkAAGQAAAACBQAAABJjb250ZXN0U3RhcnRIZWlnaHQJAABoAAAAAgAAAAAAAAAABwAAAAAAAAAFoAkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAVY29udGVzdF9jdXJyZW50bnVtYmVyBQAAABBjb250ZXN0TmV3TnVtYmVyCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAAQY29udGVzdE5ld051bWJlcgIAAAAJX2N1cnJlbmN5BQAAAA5jdXJyZW5jeVRpY2tlcgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEGNvbnRlc3ROZXdOdW1iZXICAAAADF9zdGFydGhlaWdodAUAAAASY29udGVzdFN0YXJ0SGVpZ2h0CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAAQY29udGVzdE5ld051bWJlcgIAAAANX2ZpbmlzaGhlaWdodAUAAAATY29udGVzdEZpbmlzaEhlaWdodAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEGNvbnRlc3ROZXdOdW1iZXICAAAAB19zdGF0dXMFAAAAB1JVTk5JTkcJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABBjb250ZXN0TmV3TnVtYmVyAgAAAAxfdm90ZWNvdW50ZXIAAAAAAAAAAAAFAAAAA25pbAAAAAFpAQAAAANiZXQAAAABAAAADWN1cnJlbmN5VmFsdWUEAAAAB2FjY291bnQJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAADcG10CQEAAAAHZXh0cmFjdAAAAAEIBQAAAAFpAAAAB3BheW1lbnQEAAAAEWNvbnRlc3RDdXJyTnVtYmVyCQEAAAALZ2V0TnVtQnlLZXkAAAABAgAAABVjb250ZXN0X2N1cnJlbnRudW1iZXIEAAAAEmNvbnRlc3RTdGFydEhlaWdodAkBAAAAC2dldE51bUJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAxfc3RhcnRoZWlnaHQEAAAAE2NvbnRlc3RGaW5pc2hIZWlnaHQJAQAAAAtnZXROdW1CeUtleQAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAANX2ZpbmlzaGhlaWdodAQAAAASY29udGVzdFZvdGVDb3VudGVyCQEAAAALZ2V0TnVtQnlLZXkAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAARY29udGVzdEN1cnJOdW1iZXICAAAADF92b3RlY291bnRlcgQAAAARY29udGVzdEN1cnJTdGF0dXMJAQAAAAtnZXRTdHJCeUtleQAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAAHX3N0YXR1cwQAAAAKdGhpc1ZvdGVJZAkAAGQAAAACBQAAABJjb250ZXN0Vm90ZUNvdW50ZXIAAAAAAAAAAAEEAAAADWNvbnRlc3RTdGF0dXMJAQAAAAtnZXRTdHJCeUtleQAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAAHX3N0YXR1cwQAAAARZXhpc3RpbmdCZXRWb3RlSWQJAQAAAAtnZXROdW1CeUtleQAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAABGJldF8JAAGkAAAAAQUAAAARY29udGVzdEN1cnJOdW1iZXICAAAAAV8FAAAADWN1cnJlbmN5VmFsdWUEAAAAEmV4aXN0aW5nQmV0QWNjb3VudAkBAAAADWdldEJldEFjY291bnQAAAABBQAAABFleGlzdGluZ0JldFZvdGVJZAMJAABmAAAAAgUAAAAGaGVpZ2h0CQAAZQAAAAIFAAAAE2NvbnRlc3RGaW5pc2hIZWlnaHQJAABoAAAAAgAAAAAAAAAAAgAAAAAAAAAFoAkAAAIAAAABAgAAACZZb3UgY2Fubm90IGJldCBhbnltb3JlIGF0IHRoaXMgaGVpZ2h0LgMJAQAAAAIhPQAAAAIFAAAAEWNvbnRlc3RDdXJyU3RhdHVzBQAAAAdSVU5OSU5HCQAAAgAAAAECAAAAI0ludmFsaWQgc3RhdHVzOiB5b3UgY2Fubm90IGJldCBub3cuAwMJAQAAAAIhPQAAAAIIBQAAAANwbXQAAAAHYXNzZXRJZAUAAAADV0xUBgkBAAAAAiE9AAAAAggFAAAAA3BtdAAAAAZhbW91bnQAAAAAAAAHoSAJAAACAAAAAQIAAAAaWW91IG11c3QgcGF5IDUgV0xUIHRvIGJldC4DAwYGAwkBAAAAAiE9AAAAAgUAAAASZXhpc3RpbmdCZXRBY2NvdW50BQAAAAROT05FCQEAAAACIT0AAAACBQAAABJleGlzdGluZ0JldEFjY291bnQFAAAAB2FjY291bnQHCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAA5Bbm90aGVyIHVzZXI6IAUAAAASZXhpc3RpbmdCZXRBY2NvdW50AgAAABogZGlkIGJldCBhbHJlYWR5IG9uIHJhdGU6IAUAAAANY3VycmVuY3lWYWx1ZQIAAAAHIGJldElEOgkAAaQAAAABBQAAABFleGlzdGluZ0JldFZvdGVJZAkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAARiZXRfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAFfCQABpAAAAAEFAAAACnRoaXNWb3RlSWQCAAAABl9vd25lcgUAAAAHYWNjb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAEYmV0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAABXwUAAAANY3VycmVuY3lWYWx1ZQUAAAAKdGhpc1ZvdGVJZAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAxfdm90ZWNvdW50ZXIFAAAACnRoaXNWb3RlSWQFAAAAA25pbAAAAAFpAQAAAAxjbG9zZWNvbnRlc3QAAAABAAAADGN1cnJlbmN5UmF0ZQQAAAARY29udGVzdEN1cnJOdW1iZXIJAQAAAAtnZXROdW1CeUtleQAAAAECAAAAFWNvbnRlc3RfY3VycmVudG51bWJlcgQAAAAQd2lubmluZ0JldFZvdGVJZAkBAAAAC2dldE51bUJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAEYmV0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAABXwUAAAAMY3VycmVuY3lSYXRlBAAAABF3aW5uaW5nQmV0QWNjb3VudAkBAAAADWdldEJldEFjY291bnQAAAABBQAAABB3aW5uaW5nQmV0Vm90ZUlkBAAAAAdhY2NvdW50CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAB2JhbGFuY2UJAQAAAAx3YXZlc0JhbGFuY2UAAAABBQAAAAR0aGlzBAAAABFjb250ZXN0Q3VyclN0YXR1cwkBAAAAC2dldFN0ckJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAdfc3RhdHVzBAAAAA93cml0ZVN0YXRpc3RpY3MJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAAHX3N0YXR1cwUAAAAGQ0xPU0VE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", "chainId": 84, "height": 633440, "spentComplexity": 0 } View: original | compacted Prev: J3BPdZa5uKMC8EokSdDaePX22uHUkAfBHXUg9332JczU Next: 5TPtRd4sSAVjzgD1WutFf25NPHbVccvE3m93JdHt9E8q Diff:
OldNewDifferences
77
88 let c = "3N7Wiiso7vo69pqWfLtpzT3tbzMUGahqpgo"
99
10-let d = "WAVES"
10+let d = "3NAcoeWdUTWn8csXJPG47v1Fjtjcfqxb5tu"
1111
12-let e = "NONE"
12+let e = "wltburnwallet"
1313
14-let f = 900000
14+let f = "deemru"
1515
16-let g = base58'7KAXNTswj6947a6cVpGhVrh1utWpLcjwf8AFpWCtuMT7'
16+let g = "WAVES"
1717
18-func h (i) = {
19- let j = {
20- let k = getInteger(this, i)
21- if ($isInstanceOf(k, "Int"))
18+let h = "NONE"
19+
20+let i = 900000
21+
22+let j = base58'7KAXNTswj6947a6cVpGhVrh1utWpLcjwf8AFpWCtuMT7'
23+
24+func k (l) = {
25+ let m = {
26+ let n = getInteger(this, l)
27+ if ($isInstanceOf(n, "Int"))
2228 then {
23- let l = k
24- l
29+ let o = n
30+ o
2531 }
2632 else 0
2733 }
28- j
34+ m
2935 }
3036
3137
32-func m (i) = {
33- let n = {
34- let k = getString(this, i)
35- if ($isInstanceOf(k, "String"))
38+func p (l) = {
39+ let q = {
40+ let n = getString(this, l)
41+ if ($isInstanceOf(n, "String"))
3642 then {
37- let l = k
38- l
43+ let o = n
44+ o
3945 }
40- else e
46+ else h
4147 }
42- n
48+ q
4349 }
4450
4551
46-func o () = {
47- let p = h("contest_currentnumber")
48- m((("contest_" + toString(p)) + "_status"))
52+func r () = {
53+ let s = k("contest_currentnumber")
54+ p((("contest_" + toString(s)) + "_status"))
4955 }
5056
5157
52-func q (r) = {
53- let p = h("contest_currentnumber")
54- m((((("bet_" + toString(p)) + "_") + toString(r)) + "_owner"))
58+func t (u) = {
59+ let s = k("contest_currentnumber")
60+ p((((("bet_" + toString(s)) + "_") + toString(u)) + "_owner"))
5561 }
5662
5763
58-func s () = {
59- let t = extract(addressFromString("3PPTrTo3AzR56N7ArzbU3Bpq9zYMgcf39Mk"))
60- let u = {
61- let k = getInteger(t, "waves_usd_2")
62- if ($isInstanceOf(k, "Int"))
64+func v () = {
65+ let w = extract(addressFromString("3PPTrTo3AzR56N7ArzbU3Bpq9zYMgcf39Mk"))
66+ let x = {
67+ let n = getInteger(w, "waves_usd_2")
68+ if ($isInstanceOf(n, "Int"))
6369 then {
64- let l = k
65- l
70+ let o = n
71+ o
6672 }
6773 else 0
6874 }
69- u
75+ x
7076 }
7177
7278
73-@Callable(v)
74-func setContestStatus (w,x) = {
75- let y = toBase58String(v.caller.bytes)
76- if ((y != c))
79+@Callable(y)
80+func setContestStatus (z,A) = {
81+ let B = toBase58String(y.caller.bytes)
82+ if ((B != c))
7783 then throw("Only dAPP Owner can set Contest Status.")
78- else if (if ((x != a))
79- then (x != b)
84+ else if (if ((A != a))
85+ then (A != b)
8086 else false)
81- then throw(("Invalid status: " + x))
82- else WriteSet([DataEntry((("contest_" + toString(w)) + "_status"), x)])
87+ then throw(("Invalid status: " + A))
88+ else WriteSet([DataEntry((("contest_" + toString(z)) + "_status"), A)])
8389 }
8490
8591
8692
87-@Callable(v)
88-func setContestConfiguration (z,A) = {
89- let y = toBase58String(v.caller.bytes)
90- let p = h("contest_currentnumber")
91- let B = m((("contest_" + toString(p)) + "_status"))
92- let C = (p + 1)
93- if ((y != c))
94- then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + y) + " dapp owner: ") + c))
95- else if ((height >= A))
93+@Callable(y)
94+func setContestConfiguration (C,D) = {
95+ let B = toBase58String(y.caller.bytes)
96+ let s = k("contest_currentnumber")
97+ let E = p((("contest_" + toString(s)) + "_status"))
98+ let F = (s + 1)
99+ if ((B != c))
100+ then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + B) + " dapp owner: ") + c))
101+ else if ((height >= D))
96102 then throw(("Start Height must be greater than current Blockchain height: " + toString(height)))
97- else if ((B == a))
98- then throw(("You cannot configure a new Contest while old Contest status is: " + B))
99- else if ((z != d))
100- then throw((("dAPP does not support currency: " + z) + " yet."))
103+ else if ((E == a))
104+ then throw(("You cannot configure a new Contest while old Contest status is: " + E))
105+ else if ((C != g))
106+ then throw((("dAPP does not support currency: " + C) + " yet."))
101107 else {
102- let D = (A + (7 * 1440))
103- WriteSet([DataEntry("contest_currentnumber", C), DataEntry((("contest_" + toString(C)) + "_currency"), z), DataEntry((("contest_" + toString(C)) + "_startheight"), A), DataEntry((("contest_" + toString(C)) + "_finishheight"), D), DataEntry((("contest_" + toString(C)) + "_status"), a), DataEntry((("contest_" + toString(C)) + "_votecounter"), 0)])
108+ let G = (D + (7 * 1440))
109+ WriteSet([DataEntry("contest_currentnumber", F), DataEntry((("contest_" + toString(F)) + "_currency"), C), DataEntry((("contest_" + toString(F)) + "_startheight"), D), DataEntry((("contest_" + toString(F)) + "_finishheight"), G), DataEntry((("contest_" + toString(F)) + "_status"), a), DataEntry((("contest_" + toString(F)) + "_votecounter"), 0)])
104110 }
105111 }
106112
107113
108114
109-@Callable(v)
110-func bet (E) = {
111- let y = toBase58String(v.caller.bytes)
112- let F = extract(v.payment)
113- let p = h("contest_currentnumber")
114- let A = h((("contest_" + toString(p)) + "_startheight"))
115- let D = h((("contest_" + toString(p)) + "_finishheight"))
116- let G = h((("contest_" + toString(p)) + "_votecounter"))
117- let B = m((("contest_" + toString(p)) + "_status"))
118- let H = (G + 1)
119- let x = m((("contest_" + toString(p)) + "_status"))
120- let I = h(((("bet_" + toString(p)) + "_") + E))
121- let J = q(I)
122- if ((height > (D - (2 * 1440))))
115+@Callable(y)
116+func bet (H) = {
117+ let B = toBase58String(y.caller.bytes)
118+ let I = extract(y.payment)
119+ let s = k("contest_currentnumber")
120+ let D = k((("contest_" + toString(s)) + "_startheight"))
121+ let G = k((("contest_" + toString(s)) + "_finishheight"))
122+ let J = k((("contest_" + toString(s)) + "_votecounter"))
123+ let E = p((("contest_" + toString(s)) + "_status"))
124+ let K = (J + 1)
125+ let A = p((("contest_" + toString(s)) + "_status"))
126+ let L = k(((("bet_" + toString(s)) + "_") + H))
127+ let M = t(L)
128+ if ((height > (G - (2 * 1440))))
123129 then throw("You cannot bet anymore at this height.")
124- else if ((B != a))
130+ else if ((E != a))
125131 then throw("Invalid status: you cannot bet now.")
126- else if (if ((F.assetId != g))
132+ else if (if ((I.assetId != j))
127133 then true
128- else (F.amount != 500000))
134+ else (I.amount != 500000))
129135 then throw("You must pay 5 WLT to bet.")
130136 else if (if (true)
131137 then true
132- else if ((J != e))
133- then (J != y)
138+ else if ((M != h))
139+ then (M != B)
134140 else false)
135- then throw(((((("Another user: " + J) + " did bet already on rate: ") + E) + " betID:") + toString(I)))
136- else WriteSet([DataEntry((((("bet_" + toString(p)) + "_") + toString(H)) + "_owner"), y), DataEntry(((("bet_" + toString(p)) + "_") + E), H), DataEntry((("contest_" + toString(p)) + "_votecounter"), H)])
141+ then throw(((((("Another user: " + M) + " did bet already on rate: ") + H) + " betID:") + toString(L)))
142+ else WriteSet([DataEntry((((("bet_" + toString(s)) + "_") + toString(K)) + "_owner"), B), DataEntry(((("bet_" + toString(s)) + "_") + H), K), DataEntry((("contest_" + toString(s)) + "_votecounter"), K)])
137143 }
138144
139145
140146
141-@Callable(v)
142-func closecontest (K) = {
143- let p = h("contest_currentnumber")
144- let L = h(((("bet_" + toString(p)) + "_") + K))
145- let M = q(L)
146- let y = toBase58String(v.caller.bytes)
147- let N = wavesBalance(this)
148- let B = m((("contest_" + toString(p)) + "_status"))
149- let O = WriteSet([DataEntry((("contest_" + toString(p)) + "_status"), b), DataEntry((("contest_" + toString(p)) + "_winner"), M), DataEntry((("contest_" + toString(p)) + "_currencyrate"), K), DataEntry((("contest_" + toString(p)) + "_height"), height)])
150- if ((y != c))
147+@Callable(y)
148+func closecontest (N) = {
149+ let s = k("contest_currentnumber")
150+ let O = k(((("bet_" + toString(s)) + "_") + N))
151+ let P = t(O)
152+ let B = toBase58String(y.caller.bytes)
153+ let Q = wavesBalance(this)
154+ let E = p((("contest_" + toString(s)) + "_status"))
155+ let R = WriteSet([DataEntry((("contest_" + toString(s)) + "_status"), b), DataEntry((("contest_" + toString(s)) + "_winner"), P), DataEntry((("contest_" + toString(s)) + "_currencyrate"), N), DataEntry((("contest_" + toString(s)) + "_height"), height)])
156+ if ((B != c))
151157 then throw("Only dAPP Owner can Close Contest.")
152- else if ((B != a))
153- then throw(("Cannot close a contest in status: " + B))
154- else if ((M != e))
158+ else if ((E != a))
159+ then throw(("Cannot close a contest in status: " + E))
160+ else if ((P != h))
155161 then {
156- let P = TransferSet([ScriptTransfer(extract(addressFromString(M)), (wavesBalance(this) - f), unit)])
157- ScriptResult(WriteSet([DataEntry((("contest_" + toString(p)) + "_status"), b), DataEntry((("contest_" + toString(p)) + "_winner"), M), DataEntry((("contest_" + toString(p)) + "_currencyrate"), K), DataEntry((("contest_" + toString(p)) + "_height"), height)]), P)
162+ let S = ((assetBalance(this, j) * 5) / 100)
163+ let T = ((assetBalance(this, j) * 90) / 100)
164+ let U = TransferSet([ScriptTransfer(extract(addressFromString(P)), (wavesBalance(this) - i), unit), ScriptTransfer(extract(addressFromString(d)), S, j), ScriptTransfer(extract(addressFromString(f)), S, j), ScriptTransfer(extract(addressFromString(e)), T, j)])
165+ ScriptResult(WriteSet([DataEntry((("contest_" + toString(s)) + "_status"), b), DataEntry((("contest_" + toString(s)) + "_winner"), P), DataEntry((("contest_" + toString(s)) + "_currencyrate"), N), DataEntry((("contest_" + toString(s)) + "_height"), height)]), U)
158166 }
159- else WriteSet([DataEntry((("contest_" + toString(p)) + "_status"), b), DataEntry((("contest_" + toString(p)) + "_winner"), M), DataEntry((("contest_" + toString(p)) + "_currencyrate"), K), DataEntry((("contest_" + toString(p)) + "_height"), height)])
167+ else WriteSet([DataEntry((("contest_" + toString(s)) + "_status"), b), DataEntry((("contest_" + toString(s)) + "_winner"), P), DataEntry((("contest_" + toString(s)) + "_currencyrate"), N), DataEntry((("contest_" + toString(s)) + "_height"), height)])
160168 }
161169
162170
163-@Verifier(Q)
164-func R () = {
165- let k = Q
166- if (if ($isInstanceOf(k, "SetScriptTransaction"))
171+@Verifier(V)
172+func W () = {
173+ let n = V
174+ if (if ($isInstanceOf(n, "SetScriptTransaction"))
167175 then true
168- else $isInstanceOf(k, "DataTransaction"))
169- then sigVerify(Q.bodyBytes, Q.proofs[0], Q.senderPublicKey)
170- else if ($isInstanceOf(k, "InvokeScriptTransaction"))
176+ else $isInstanceOf(n, "DataTransaction"))
177+ then sigVerify(V.bodyBytes, V.proofs[0], V.senderPublicKey)
178+ else if ($isInstanceOf(n, "InvokeScriptTransaction"))
171179 then true
172180 else true
173181 }
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 = "3N7Wiiso7vo69pqWfLtpzT3tbzMUGahqpgo"
99
10-let d = "WAVES"
10+let d = "3NAcoeWdUTWn8csXJPG47v1Fjtjcfqxb5tu"
1111
12-let e = "NONE"
12+let e = "wltburnwallet"
1313
14-let f = 900000
14+let f = "deemru"
1515
16-let g = base58'7KAXNTswj6947a6cVpGhVrh1utWpLcjwf8AFpWCtuMT7'
16+let g = "WAVES"
1717
18-func h (i) = {
19- let j = {
20- let k = getInteger(this, i)
21- if ($isInstanceOf(k, "Int"))
18+let h = "NONE"
19+
20+let i = 900000
21+
22+let j = base58'7KAXNTswj6947a6cVpGhVrh1utWpLcjwf8AFpWCtuMT7'
23+
24+func k (l) = {
25+ let m = {
26+ let n = getInteger(this, l)
27+ if ($isInstanceOf(n, "Int"))
2228 then {
23- let l = k
24- l
29+ let o = n
30+ o
2531 }
2632 else 0
2733 }
28- j
34+ m
2935 }
3036
3137
32-func m (i) = {
33- let n = {
34- let k = getString(this, i)
35- if ($isInstanceOf(k, "String"))
38+func p (l) = {
39+ let q = {
40+ let n = getString(this, l)
41+ if ($isInstanceOf(n, "String"))
3642 then {
37- let l = k
38- l
43+ let o = n
44+ o
3945 }
40- else e
46+ else h
4147 }
42- n
48+ q
4349 }
4450
4551
46-func o () = {
47- let p = h("contest_currentnumber")
48- m((("contest_" + toString(p)) + "_status"))
52+func r () = {
53+ let s = k("contest_currentnumber")
54+ p((("contest_" + toString(s)) + "_status"))
4955 }
5056
5157
52-func q (r) = {
53- let p = h("contest_currentnumber")
54- m((((("bet_" + toString(p)) + "_") + toString(r)) + "_owner"))
58+func t (u) = {
59+ let s = k("contest_currentnumber")
60+ p((((("bet_" + toString(s)) + "_") + toString(u)) + "_owner"))
5561 }
5662
5763
58-func s () = {
59- let t = extract(addressFromString("3PPTrTo3AzR56N7ArzbU3Bpq9zYMgcf39Mk"))
60- let u = {
61- let k = getInteger(t, "waves_usd_2")
62- if ($isInstanceOf(k, "Int"))
64+func v () = {
65+ let w = extract(addressFromString("3PPTrTo3AzR56N7ArzbU3Bpq9zYMgcf39Mk"))
66+ let x = {
67+ let n = getInteger(w, "waves_usd_2")
68+ if ($isInstanceOf(n, "Int"))
6369 then {
64- let l = k
65- l
70+ let o = n
71+ o
6672 }
6773 else 0
6874 }
69- u
75+ x
7076 }
7177
7278
73-@Callable(v)
74-func setContestStatus (w,x) = {
75- let y = toBase58String(v.caller.bytes)
76- if ((y != c))
79+@Callable(y)
80+func setContestStatus (z,A) = {
81+ let B = toBase58String(y.caller.bytes)
82+ if ((B != c))
7783 then throw("Only dAPP Owner can set Contest Status.")
78- else if (if ((x != a))
79- then (x != b)
84+ else if (if ((A != a))
85+ then (A != b)
8086 else false)
81- then throw(("Invalid status: " + x))
82- else WriteSet([DataEntry((("contest_" + toString(w)) + "_status"), x)])
87+ then throw(("Invalid status: " + A))
88+ else WriteSet([DataEntry((("contest_" + toString(z)) + "_status"), A)])
8389 }
8490
8591
8692
87-@Callable(v)
88-func setContestConfiguration (z,A) = {
89- let y = toBase58String(v.caller.bytes)
90- let p = h("contest_currentnumber")
91- let B = m((("contest_" + toString(p)) + "_status"))
92- let C = (p + 1)
93- if ((y != c))
94- then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + y) + " dapp owner: ") + c))
95- else if ((height >= A))
93+@Callable(y)
94+func setContestConfiguration (C,D) = {
95+ let B = toBase58String(y.caller.bytes)
96+ let s = k("contest_currentnumber")
97+ let E = p((("contest_" + toString(s)) + "_status"))
98+ let F = (s + 1)
99+ if ((B != c))
100+ then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + B) + " dapp owner: ") + c))
101+ else if ((height >= D))
96102 then throw(("Start Height must be greater than current Blockchain height: " + toString(height)))
97- else if ((B == a))
98- then throw(("You cannot configure a new Contest while old Contest status is: " + B))
99- else if ((z != d))
100- then throw((("dAPP does not support currency: " + z) + " yet."))
103+ else if ((E == a))
104+ then throw(("You cannot configure a new Contest while old Contest status is: " + E))
105+ else if ((C != g))
106+ then throw((("dAPP does not support currency: " + C) + " yet."))
101107 else {
102- let D = (A + (7 * 1440))
103- WriteSet([DataEntry("contest_currentnumber", C), DataEntry((("contest_" + toString(C)) + "_currency"), z), DataEntry((("contest_" + toString(C)) + "_startheight"), A), DataEntry((("contest_" + toString(C)) + "_finishheight"), D), DataEntry((("contest_" + toString(C)) + "_status"), a), DataEntry((("contest_" + toString(C)) + "_votecounter"), 0)])
108+ let G = (D + (7 * 1440))
109+ WriteSet([DataEntry("contest_currentnumber", F), DataEntry((("contest_" + toString(F)) + "_currency"), C), DataEntry((("contest_" + toString(F)) + "_startheight"), D), DataEntry((("contest_" + toString(F)) + "_finishheight"), G), DataEntry((("contest_" + toString(F)) + "_status"), a), DataEntry((("contest_" + toString(F)) + "_votecounter"), 0)])
104110 }
105111 }
106112
107113
108114
109-@Callable(v)
110-func bet (E) = {
111- let y = toBase58String(v.caller.bytes)
112- let F = extract(v.payment)
113- let p = h("contest_currentnumber")
114- let A = h((("contest_" + toString(p)) + "_startheight"))
115- let D = h((("contest_" + toString(p)) + "_finishheight"))
116- let G = h((("contest_" + toString(p)) + "_votecounter"))
117- let B = m((("contest_" + toString(p)) + "_status"))
118- let H = (G + 1)
119- let x = m((("contest_" + toString(p)) + "_status"))
120- let I = h(((("bet_" + toString(p)) + "_") + E))
121- let J = q(I)
122- if ((height > (D - (2 * 1440))))
115+@Callable(y)
116+func bet (H) = {
117+ let B = toBase58String(y.caller.bytes)
118+ let I = extract(y.payment)
119+ let s = k("contest_currentnumber")
120+ let D = k((("contest_" + toString(s)) + "_startheight"))
121+ let G = k((("contest_" + toString(s)) + "_finishheight"))
122+ let J = k((("contest_" + toString(s)) + "_votecounter"))
123+ let E = p((("contest_" + toString(s)) + "_status"))
124+ let K = (J + 1)
125+ let A = p((("contest_" + toString(s)) + "_status"))
126+ let L = k(((("bet_" + toString(s)) + "_") + H))
127+ let M = t(L)
128+ if ((height > (G - (2 * 1440))))
123129 then throw("You cannot bet anymore at this height.")
124- else if ((B != a))
130+ else if ((E != a))
125131 then throw("Invalid status: you cannot bet now.")
126- else if (if ((F.assetId != g))
132+ else if (if ((I.assetId != j))
127133 then true
128- else (F.amount != 500000))
134+ else (I.amount != 500000))
129135 then throw("You must pay 5 WLT to bet.")
130136 else if (if (true)
131137 then true
132- else if ((J != e))
133- then (J != y)
138+ else if ((M != h))
139+ then (M != B)
134140 else false)
135- then throw(((((("Another user: " + J) + " did bet already on rate: ") + E) + " betID:") + toString(I)))
136- else WriteSet([DataEntry((((("bet_" + toString(p)) + "_") + toString(H)) + "_owner"), y), DataEntry(((("bet_" + toString(p)) + "_") + E), H), DataEntry((("contest_" + toString(p)) + "_votecounter"), H)])
141+ then throw(((((("Another user: " + M) + " did bet already on rate: ") + H) + " betID:") + toString(L)))
142+ else WriteSet([DataEntry((((("bet_" + toString(s)) + "_") + toString(K)) + "_owner"), B), DataEntry(((("bet_" + toString(s)) + "_") + H), K), DataEntry((("contest_" + toString(s)) + "_votecounter"), K)])
137143 }
138144
139145
140146
141-@Callable(v)
142-func closecontest (K) = {
143- let p = h("contest_currentnumber")
144- let L = h(((("bet_" + toString(p)) + "_") + K))
145- let M = q(L)
146- let y = toBase58String(v.caller.bytes)
147- let N = wavesBalance(this)
148- let B = m((("contest_" + toString(p)) + "_status"))
149- let O = WriteSet([DataEntry((("contest_" + toString(p)) + "_status"), b), DataEntry((("contest_" + toString(p)) + "_winner"), M), DataEntry((("contest_" + toString(p)) + "_currencyrate"), K), DataEntry((("contest_" + toString(p)) + "_height"), height)])
150- if ((y != c))
147+@Callable(y)
148+func closecontest (N) = {
149+ let s = k("contest_currentnumber")
150+ let O = k(((("bet_" + toString(s)) + "_") + N))
151+ let P = t(O)
152+ let B = toBase58String(y.caller.bytes)
153+ let Q = wavesBalance(this)
154+ let E = p((("contest_" + toString(s)) + "_status"))
155+ let R = WriteSet([DataEntry((("contest_" + toString(s)) + "_status"), b), DataEntry((("contest_" + toString(s)) + "_winner"), P), DataEntry((("contest_" + toString(s)) + "_currencyrate"), N), DataEntry((("contest_" + toString(s)) + "_height"), height)])
156+ if ((B != c))
151157 then throw("Only dAPP Owner can Close Contest.")
152- else if ((B != a))
153- then throw(("Cannot close a contest in status: " + B))
154- else if ((M != e))
158+ else if ((E != a))
159+ then throw(("Cannot close a contest in status: " + E))
160+ else if ((P != h))
155161 then {
156- let P = TransferSet([ScriptTransfer(extract(addressFromString(M)), (wavesBalance(this) - f), unit)])
157- ScriptResult(WriteSet([DataEntry((("contest_" + toString(p)) + "_status"), b), DataEntry((("contest_" + toString(p)) + "_winner"), M), DataEntry((("contest_" + toString(p)) + "_currencyrate"), K), DataEntry((("contest_" + toString(p)) + "_height"), height)]), P)
162+ let S = ((assetBalance(this, j) * 5) / 100)
163+ let T = ((assetBalance(this, j) * 90) / 100)
164+ let U = TransferSet([ScriptTransfer(extract(addressFromString(P)), (wavesBalance(this) - i), unit), ScriptTransfer(extract(addressFromString(d)), S, j), ScriptTransfer(extract(addressFromString(f)), S, j), ScriptTransfer(extract(addressFromString(e)), T, j)])
165+ ScriptResult(WriteSet([DataEntry((("contest_" + toString(s)) + "_status"), b), DataEntry((("contest_" + toString(s)) + "_winner"), P), DataEntry((("contest_" + toString(s)) + "_currencyrate"), N), DataEntry((("contest_" + toString(s)) + "_height"), height)]), U)
158166 }
159- else WriteSet([DataEntry((("contest_" + toString(p)) + "_status"), b), DataEntry((("contest_" + toString(p)) + "_winner"), M), DataEntry((("contest_" + toString(p)) + "_currencyrate"), K), DataEntry((("contest_" + toString(p)) + "_height"), height)])
167+ else WriteSet([DataEntry((("contest_" + toString(s)) + "_status"), b), DataEntry((("contest_" + toString(s)) + "_winner"), P), DataEntry((("contest_" + toString(s)) + "_currencyrate"), N), DataEntry((("contest_" + toString(s)) + "_height"), height)])
160168 }
161169
162170
163-@Verifier(Q)
164-func R () = {
165- let k = Q
166- if (if ($isInstanceOf(k, "SetScriptTransaction"))
171+@Verifier(V)
172+func W () = {
173+ let n = V
174+ if (if ($isInstanceOf(n, "SetScriptTransaction"))
167175 then true
168- else $isInstanceOf(k, "DataTransaction"))
169- then sigVerify(Q.bodyBytes, Q.proofs[0], Q.senderPublicKey)
170- else if ($isInstanceOf(k, "InvokeScriptTransaction"))
176+ else $isInstanceOf(n, "DataTransaction"))
177+ then sigVerify(V.bodyBytes, V.proofs[0], V.senderPublicKey)
178+ else if ($isInstanceOf(n, "InvokeScriptTransaction"))
171179 then true
172180 else true
173181 }
174182

github/deemru/w8io/169f3d6 
72.84 ms