tx · EUxYoayfsQerG5zKN8VPPHLdiNPQ7qFyQeHFc5dL1wFk

3NBEbFU6dKpoAcsbaEK2aC62UQMjYFW4xiL:  -0.05000000 Waves

2021.02.20 13:27 [1406343] smart account 3NBEbFU6dKpoAcsbaEK2aC62UQMjYFW4xiL > SELF 0.00000000 Waves

{ "type": 13, "id": "EUxYoayfsQerG5zKN8VPPHLdiNPQ7qFyQeHFc5dL1wFk", "fee": 5000000, "feeAssetId": null, "timestamp": 1613816892204, "version": 2, "chainId": 84, "sender": "3NBEbFU6dKpoAcsbaEK2aC62UQMjYFW4xiL", "senderPublicKey": "AwmS57W97dpK3Bs6tsewG3YaYgJukDtmEZFbG1oQTV4T", "proofs": [ "26eaUC1DpcBVnyPmfWS2eAsqUkXuaQAC5ZFmRvbZdmcf4BcYPpsM18Xhz3juWx6ovANdQCR7Db2fvD3ZAZh5e2sE" ], "script": "base64:AAIDAAAAAAAAABAIARIDCgEIEgASAwoBARIAAAAACgAAAAAHUlVOTklORwIAAAAHUlVOTklORwAAAAAGQ0xPU0VEAgAAAAZDTE9TRUQAAAAACENBTkNFTEVEAgAAAAhDQU5DRUxFRAAAAAAJREFQUE9XTkVSAgAAACMzTkJFYkZVNmRLcG9BY3NiYUVLMmFDNjJVUU1qWUZXNHhpTAAAAAAFV0FWRVMCAAAABVdBVkVTAAAAAAROT05FAgAAAAROT05FAAAAAANGRUUAAAAAAAANu6ABAAAACnJhbmRvbWl6ZXIAAAABAAAAA2ludgQAAAAIbGFzdFBsYXkEAAAAByRtYXRjaDAJAAQcAAAAAgUAAAAEdGhpcwIAAAAPZXh0cmFjdGVkTnVtYmVyAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAFzBQAAAAckbWF0Y2gwBQAAAAFzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0AQAAAAxXYXZlc0xvdHRvVjIJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IEAAAABHJhbmQJAADLAAAAAgkAAMsAAAACCQAAywAAAAIJAADLAAAAAgkAAMsAAAACBQAAAAhsYXN0UGxheQgFAAAAA2ludgAAAA10cmFuc2FjdGlvbklkCAUAAAADaW52AAAAD2NhbGxlclB1YmxpY0tleQgFAAAACWxhc3RCbG9jawAAABNnZW5lcmF0aW9uU2lnbmF0dXJlCQABmgAAAAEIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wCQABmgAAAAEIBQAAAAlsYXN0QmxvY2sAAAAGaGVpZ2h0CQAB9wAAAAEFAAAABHJhbmQBAAAAC2dldE51bUJ5S2V5AAAAAQAAAANrZXkEAAAAA251bQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAUAAAADbnVtAQAAAAtnZXRTdHJCeUtleQAAAAEAAAADa2V5BAAAAANzdHIEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEFAAAABE5PTkUFAAAAA3N0cgAAAAQAAAABaQEAAAAQc2V0Q29udGVzdFN0YXR1cwAAAAEAAAANY29udGVzdFN0YXR1cwQAAAAHYWNjb3VudAkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAABFjb250ZXN0Q3Vyck51bWJlcgkBAAAAC2dldE51bUJ5S2V5AAAAAQIAAAAVY29udGVzdF9jdXJyZW50bnVtYmVyAwkBAAAAAiE9AAAAAgUAAAAHYWNjb3VudAUAAAAJREFQUE9XTkVSCQAAAgAAAAECAAAAJ09ubHkgZEFQUCBPd25lciBjYW4gc2V0IENvbnRlc3QgU3RhdHVzLgMDCQEAAAACIT0AAAACBQAAAA1jb250ZXN0U3RhdHVzBQAAAAhDQU5DRUxFRAkBAAAAAiE9AAAAAgUAAAANY29udGVzdFN0YXR1cwUAAAAGQ0xPU0VEBwkAAAIAAAABCQABLAAAAAICAAAAEEludmFsaWQgc3RhdHVzOiAFAAAADWNvbnRlc3RTdGF0dXMJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAAHX3N0YXR1cwUAAAANY29udGVzdFN0YXR1cwUAAAADbmlsAAAAAWkBAAAAF3NldENvbnRlc3RDb25maWd1cmF0aW9uAAAAAAQAAAAHYWNjb3VudAkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAABFjb250ZXN0Q3Vyck51bWJlcgkBAAAAC2dldE51bUJ5S2V5AAAAAQIAAAAVY29udGVzdF9jdXJyZW50bnVtYmVyBAAAABFjb250ZXN0Q3VyclN0YXR1cwkBAAAAC2dldFN0ckJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAdfc3RhdHVzBAAAABBjb250ZXN0TmV3TnVtYmVyCQAAZAAAAAIFAAAA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", "height": 1406343, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Bqg2a9kuT4GLzNY7NyDAxW9pLYjkr6wQvcByBT1n1rvp Next: BBA6ikxTzfDaKfNyKKqRpPqdEaZPNzEJ7vUoiZzWyMKS Diff:
OldNewDifferences
134134 let H = r(((("bet_" + toString(w)) + "_") + toString(1)))
135135 let A = n((("contest_" + toString(w)) + "_finishheight"))
136136 let v = toBase58String(t.caller.bytes)
137- let z = wavesBalance(this)
137+ let I = (wavesBalance(this) - 100000)
138138 let x = r((("contest_" + toString(w)) + "_status"))
139139 if ((v != d))
140140 then throw("Only dAPP Owner can Close the Lottery.")
142142 then throw(("Cannot close a contest in status: " + x))
143143 else if ((H != f))
144144 then {
145- let I = wavesBalance(this)
146145 let J = TransferSet([ScriptTransfer(extract(addressFromString(H)), I, unit)])
147146 ScriptResult(WriteSet([DataEntry((("contest_" + toString(w)) + "_status"), b), DataEntry((("contest_" + toString(w)) + "_winner"), H), DataEntry((("contest_" + toString(w)) + "_rateheight"), height), DataEntry((("contest_" + toString(w)) + "_extractedNumber"), G), DataEntry((("contest_" + toString(w)) + "_prize"), I)]), J)
148147 }
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 = "3NBEbFU6dKpoAcsbaEK2aC62UQMjYFW4xiL"
1111
1212 let e = "WAVES"
1313
1414 let f = "NONE"
1515
1616 let g = 900000
1717
1818 func h (i) = {
1919 let j = {
2020 let k = getBinary(this, "extractedNumber")
2121 if ($isInstanceOf(k, "ByteVector"))
2222 then {
2323 let l = k
2424 l
2525 }
2626 else if ($isInstanceOf(k, "Unit"))
2727 then base58'2ee4oFDYriWJ9EMeR'
2828 else throw("Match error")
2929 }
3030 let m = (((((j + i.transactionId) + i.callerPublicKey) + lastBlock.generationSignature) + toBytes(lastBlock.timestamp)) + toBytes(lastBlock.height))
3131 sha256(m)
3232 }
3333
3434
3535 func n (o) = {
3636 let p = {
3737 let k = getInteger(this, o)
3838 if ($isInstanceOf(k, "Int"))
3939 then {
4040 let q = k
4141 q
4242 }
4343 else 0
4444 }
4545 p
4646 }
4747
4848
4949 func r (o) = {
5050 let s = {
5151 let k = getString(this, o)
5252 if ($isInstanceOf(k, "String"))
5353 then {
5454 let q = k
5555 q
5656 }
5757 else f
5858 }
5959 s
6060 }
6161
6262
6363 @Callable(t)
6464 func setContestStatus (u) = {
6565 let v = toBase58String(t.caller.bytes)
6666 let w = n("contest_currentnumber")
6767 if ((v != d))
6868 then throw("Only dAPP Owner can set Contest Status.")
6969 else if (if ((u != c))
7070 then (u != b)
7171 else false)
7272 then throw(("Invalid status: " + u))
7373 else WriteSet([DataEntry((("contest_" + toString(w)) + "_status"), u)])
7474 }
7575
7676
7777
7878 @Callable(t)
7979 func setContestConfiguration () = {
8080 let v = toBase58String(t.caller.bytes)
8181 let w = n("contest_currentnumber")
8282 let x = r((("contest_" + toString(w)) + "_status"))
8383 let y = (w + 1)
8484 let z = wavesBalance(this)
8585 if ((v != d))
8686 then throw(((("Only dAPP Owner can Configure Contest. Caller account: " + v) + " dapp owner: ") + d))
8787 else if ((x == a))
8888 then throw(("You cannot configure a new Contest while old Contest status is: " + x))
8989 else {
9090 let A = (height + (6 * 1440))
9191 WriteSet([DataEntry("contest_currentnumber", y), DataEntry((("contest_" + toString(y)) + "_finishheight"), A), DataEntry((("contest_" + toString(y)) + "_status"), a), DataEntry((("contest_" + toString(y)) + "_betcounter"), 0)])
9292 }
9393 }
9494
9595
9696
9797 @Callable(t)
9898 func bet (B) = {
9999 let v = toBase58String(t.caller.bytes)
100100 let C = extract(t.payment)
101101 let w = n("contest_currentnumber")
102102 let D = n((("contest_" + toString(w)) + "_startheight"))
103103 let A = n((("contest_" + toString(w)) + "_finishheight"))
104104 let x = r((("contest_" + toString(w)) + "_status"))
105105 let u = r((("contest_" + toString(w)) + "_status"))
106106 let E = n((((("contest_" + toString(w)) + "_") + v) + "_bets"))
107107 let F = r(((("bet_" + toString(w)) + "_") + toString(B)))
108108 if ((height > (A - (2 * 1440))))
109109 then throw("You cannot bet anymore at this height.")
110110 else if ((x != a))
111111 then throw(("Invalid status: you cannot bet now, contest status is: " + x))
112112 else if (if ((F != f))
113113 then (F != v)
114114 else false)
115115 then throw((("Another wallet: " + F) + " took this number."))
116116 else if ((E >= 1))
117117 then throw("You can chose at most one number.")
118118 else if ((x != a))
119119 then throw(("Invalid status: you cannot bet now, contest status is: " + x))
120120 else if (if ((0 > B))
121121 then true
122122 else (B > 99))
123123 then throw("You can select a number between 0 and 99")
124124 else WriteSet([DataEntry(((("bet_" + toString(w)) + "_") + toString(B)), v), DataEntry((((("contest_" + toString(w)) + "_") + v) + "_bets"), (E + 1))])
125125 }
126126
127127
128128
129129 @Callable(t)
130130 func closecontest () = {
131131 let m = h(t)
132132 let G = (toInt(m) % 2)
133133 let w = n("contest_currentnumber")
134134 let H = r(((("bet_" + toString(w)) + "_") + toString(1)))
135135 let A = n((("contest_" + toString(w)) + "_finishheight"))
136136 let v = toBase58String(t.caller.bytes)
137- let z = wavesBalance(this)
137+ let I = (wavesBalance(this) - 100000)
138138 let x = r((("contest_" + toString(w)) + "_status"))
139139 if ((v != d))
140140 then throw("Only dAPP Owner can Close the Lottery.")
141141 else if ((x != a))
142142 then throw(("Cannot close a contest in status: " + x))
143143 else if ((H != f))
144144 then {
145- let I = wavesBalance(this)
146145 let J = TransferSet([ScriptTransfer(extract(addressFromString(H)), I, unit)])
147146 ScriptResult(WriteSet([DataEntry((("contest_" + toString(w)) + "_status"), b), DataEntry((("contest_" + toString(w)) + "_winner"), H), DataEntry((("contest_" + toString(w)) + "_rateheight"), height), DataEntry((("contest_" + toString(w)) + "_extractedNumber"), G), DataEntry((("contest_" + toString(w)) + "_prize"), I)]), J)
148147 }
149148 else WriteSet([DataEntry((("contest_" + toString(w)) + "_status"), b), DataEntry((("contest_" + toString(w)) + "_winner"), H), DataEntry((("contest_" + toString(w)) + "_extractedNumber"), G), DataEntry((("contest_" + toString(w)) + "_prize"), 0)])
150149 }
151150
152151
153152 @Verifier(K)
154153 func L () = {
155154 let k = K
156155 if (if ($isInstanceOf(k, "SetScriptTransaction"))
157156 then true
158157 else $isInstanceOf(k, "DataTransaction"))
159158 then sigVerify(K.bodyBytes, K.proofs[0], K.senderPublicKey)
160159 else if ($isInstanceOf(k, "InvokeScriptTransaction"))
161160 then true
162161 else true
163162 }
164163

github/deemru/w8io/169f3d6 
33.95 ms