tx · HhiuRwkypnEkcYDQNHqiLmkvYR2QFBbk3S51u7FS2p2b

3N4NPivoThtskr7JxnNrKL7s8BzmRGx9rT2:  -0.01400000 Waves

2019.08.11 11:53 [626166] smart account 3N4NPivoThtskr7JxnNrKL7s8BzmRGx9rT2 > SELF 0.00000000 Waves

{ "type": 13, "id": "HhiuRwkypnEkcYDQNHqiLmkvYR2QFBbk3S51u7FS2p2b", "fee": 1400000, "feeAssetId": null, "timestamp": 1565513596777, "version": 1, "sender": "3N4NPivoThtskr7JxnNrKL7s8BzmRGx9rT2", "senderPublicKey": "F3vhYapU4NBzfM2X4KNkoFcxj3UbYnJjqituG6KE7ZPG", "proofs": [ "5HqNQhC8KAzj5E4nMR7wd5zYaVEd2w4bhoSQbGBVxjiLTHiubseFrg5CBxQLccTCrcuwmXZteyXusdvEi2ok4NNn" ], "script": "base64:AAIDAAAAAAAAAAAAAAAJAAAAAAdSVU5OSU5HAgAAAAdSVU5OSU5HAAAAABBDTE9TRURGT1JCRVRUSU5HAgAAABBDTE9TRURGT1JCRVRUSU5HAAAAAAZDTE9TRUQCAAAABkNMT1NFRAAAAAAJREFQUE9XTkVSAgAAACMzTjROUGl2b1RodHNrcjdKeG5OcktMN3M4QnptUkd4OXJUMgAAAAAFV0FWRVMCAAAABVdBVkVTAAAAAAROT05FAgAAAAROT05FAQAAAAtnZXROdW1CeUtleQAAAAEAAAADa2V5BAAAAANudW0EAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAFAAAAA251bQEAAAALZ2V0U3RyQnlLZXkAAAABAAAAA2tleQQAAAADc3RyBAAAAAckbWF0Y2gwCQAEHQAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhBQAAAAROT05FBQAAAANzdHIBAAAAEGdldENvbnRlc3RTdGF0dXMAAAAABAAAABFjb250ZXN0Q3Vyck51bWJlcgkBAAAAC2dldE51bUJ5S2V5AAAAAQIAAAAVY29udGVzdF9jdXJyZW50bnVtYmVyCQEAAAALZ2V0U3RyQnlLZXkAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAARY29udGVzdEN1cnJOdW1iZXICAAAABnN0YXR1cwAAAAMAAAABaQEAAAAQc2V0Q29udGVzdFN0YXR1cwAAAAEAAAANY29udGVzdFN0YXR1cwQAAAAHYWNjb3VudAkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAABFjb250ZXN0Q3Vyck51bWJlcgkBAAAAC2dldE51bUJ5S2V5AAAAAQIAAAAVY29udGVzdF9jdXJyZW50bnVtYmVyAwkBAAAAAiE9AAAAAgUAAAAHYWNjb3VudAUAAAAJREFQUE9XTkVSCQAAAgAAAAECAAAAJ09ubHkgZEFQUCBPd25lciBjYW4gc2V0IENvbnRlc3QgU3RhdHVzLgMDAwkBAAAAAiE9AAAAAgUAAAANY29udGVzdFN0YXR1cwUAAAAHUlVOTklORwkBAAAAAiE9AAAAAgUAAAANY29udGVzdFN0YXR1cwUAAAAQQ0xPU0VERk9SQkVUVElORwcJAQAAAAIhPQAAAAIFAAAADWNvbnRlc3RTdGF0dXMFAAAABkNMT1NFRAcJAAACAAAAAQkAASwAAAACAgAAABBJbnZhbGlkIHN0YXR1czogBQAAAA1jb250ZXN0U3RhdHVzCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAARY29udGVzdEN1cnJOdW1iZXICAAAABnN0YXR1cwUAAAANY29udGVzdFN0YXR1cwUAAAADbmlsAAAAAWkBAAAAF3NldENvbnRlc3RDb25maWd1cmF0aW9uAAAAAgAAAA5jdXJyZW5jeVRpY2tlcgAAABJjb250ZXN0U3RhcnRIZWlnaHQEAAAAB2FjY291bnQJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAARY29udGVzdFByZXZOdW1iZXIJAQAAAAtnZXROdW1CeUtleQAAAAECAAAAFWNvbnRlc3RfY3VycmVudG51bWJlcgQAAAARY29udGVzdFByZXZTdGF0dXMJAQAAAAtnZXRTdHJCeUtleQAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0UHJldk51bWJlcgIAAAAHX3N0YXR1cwQAAAARY29udGVzdEN1cnJOdW1iZXIJAABkAAAAAgUAAAARY29udGVzdFByZXZOdW1iZXIAAAAAAAAAAAEDCQEAAAACIT0AAAACBQAAAAdhY2NvdW50BQAAAAlEQVBQT1dORVIJAAACAAAAAQIAAAAmT25seSBkQVBQIE93bmVyIGNhbiBDb25maWd1cmUgQ29udGVzdC4DCQAAZwAAAAIFAAAABmhlaWdodAUAAAASY29udGVzdFN0YXJ0SGVpZ2h0CQAAAgAAAAEJAAEsAAAAAgIAAAA9U3RhcnQgSGVpZ2h0IG11c3QgYmUgZ3JlYXRlciB0aGFuIGN1cnJlbnQgQmxvY2tjaGFpbiBoZWlnaHQ6IAkAAaQAAAABBQAAAAZoZWlnaHQDCQAAAAAAAAIFAAAAEWNvbnRlc3RQcmV2U3RhdHVzBQAAAAdSVU5OSU5HCQAAAgAAAAEJAAEsAAAAAgIAAABAWW91IGNhbm5vdCBjb25maWd1cmUgYSBuZXcgQ29udGVzdCB3aGlsZSBvbGQgQ29udGVzdCBzdGF0dXMgaXM6IAUAAAARY29udGVzdFByZXZTdGF0dXMDCQEAAAACIT0AAAACBQAAAA5jdXJyZW5jeVRpY2tlcgUAAAAFV0FWRVMJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAIGRBUFAgZG9lcyBub3Qgc3VwcG9ydCBjdXJyZW5jeTogBQAAAA5jdXJyZW5jeVRpY2tlcgIAAAAFIHlldC4EAAAAE2NvbnRlc3RGaW5pc2hIZWlnaHQJAABkAAAAAgUAAAASY29udGVzdFN0YXJ0SGVpZ2h0CQAAaAAAAAIAAAAAAAAAAAcAAAAAAAAABaAJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAFWNvbnRlc3RfY3VycmVudG51bWJlcgUAAAARY29udGVzdEN1cnJOdW1iZXIJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAAJX2N1cnJlbmN5BQAAAA5jdXJyZW5jeVRpY2tlcgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAxfc3RhcnRoZWlnaHQFAAAAEmNvbnRlc3RTdGFydEhlaWdodAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAA1fZmluaXNoaGVpZ2h0BQAAABNjb250ZXN0RmluaXNoSGVpZ2h0CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIY29udGVzdF8JAAGkAAAAAQUAAAARY29udGVzdEN1cnJOdW1iZXICAAAAB19zdGF0dXMFAAAAB1JVTk5JTkcFAAAAA25pbAAAAAFpAQAAAANiZXQAAAABAAAADWN1cnJlbmN5VmFsdWUEAAAAA1dMVAEAAAAgEW6f0CB8Y1LxAPH3KvvTAbHmIXmreEgfCnKMZXn04TEEAAAAB2FjY291bnQJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAADcG10CQEAAAAHZXh0cmFjdAAAAAEIBQAAAAFpAAAAB3BheW1lbnQEAAAAEWNvbnRlc3RDdXJyTnVtYmVyCQEAAAALZ2V0TnVtQnlLZXkAAAABAgAAABVjb250ZXN0X2N1cnJlbnRudW1iZXIEAAAAEmNvbnRlc3RTdGFydEhlaWdodAkBAAAAC2dldE51bUJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAtzdGFydGhlaWdodAQAAAATY29udGVzdEZpbmlzaEhlaWdodAkBAAAAC2dldE51bUJ5S2V5AAAAAQkAASwAAAACCQABLAAAAAICAAAACGNvbnRlc3RfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAxmaW5pc2hoZWlnaHQEAAAADWNvbnRlc3RTdGF0dXMJAQAAAAtnZXRTdHJCeUtleQAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAhjb250ZXN0XwkAAaQAAAABBQAAABFjb250ZXN0Q3Vyck51bWJlcgIAAAAGc3RhdHVzAwkAAGYAAAACBQAAAAZoZWlnaHQJAABlAAAAAgUAAAATY29udGVzdEZpbmlzaEhlaWdodAkAAGgAAAACAAAAAAAAAAACAAAAAAAAAAWgCQAAAgAAAAECAAAAJllvdSBjYW5ub3QgYmV0IGFueW1vcmUgYXQgdGhpcyBoZWlnaHQuAwkBAAAAAiE9AAAAAgUAAAANY29udGVzdFN0YXR1cwUAAAAHUlVOTklORwkAAAIAAAABAgAAACNJbnZhbGlkIHN0YXR1czogeW91IGNhbm5vdCBiZXQgbm93LgMDCQEAAAACIT0AAAACCAUAAAADcG10AAAAB2Fzc2V0SWQFAAAAA1dMVAYJAQAAAAIhPQAAAAIIBQAAAANwbXQAAAAGYW1vdW50AAAAAAAAB6EgCQAAAgAAAAECAAAAGllvdSBtdXN0IHBheSA1IFdMVCB0byBiZXQuCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAARiZXRfCQABpAAAAAEFAAAAEWNvbnRlc3RDdXJyTnVtYmVyAgAAAAFfBQAAAAdhY2NvdW50BQAAAA1jdXJyZW5jeVZhbHVlBQAAAANuaWwAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAABAAAAAckbWF0Y2gwBQAAAAJ0eAMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAFFNldFNjcmlwdFRyYW5zYWN0aW9uBgkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAA9EYXRhVHJhbnNhY3Rpb24JAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABdJbnZva2VTY3JpcHRUcmFuc2FjdGlvbgYGs6TA3Q==", "chainId": 84, "height": 626166, "spentComplexity": 0 } View: original | compacted Prev: GVQTh99ZWZKqoC9d1KUQE95Aubwg82e1fULQDm2gqJL7 Next: 85NzpGQw98mdFCUj2ZMfJmGdvd6b7QAKjBzGH7cAAEeX Diff:
OldNewDifferences
6767 @Callable(p)
6868 func setContestConfiguration (s,t) = {
6969 let r = toBase58String(p.caller.bytes)
70- let q = n()
7170 let u = g("contest_currentnumber")
71+ let v = l((("contest_" + toString(u)) + "_status"))
7272 let o = (u + 1)
7373 if ((r != d))
7474 then throw("Only dAPP Owner can Configure Contest.")
7575 else if ((height >= t))
7676 then throw(("Start Height must be greater than current Blockchain height: " + toString(height)))
77- else if (if ((q != a))
78- then (q != f)
79- else false)
80- then throw(("You cannot configure Contest while status is: " + q))
77+ else if ((v == a))
78+ then throw(("You cannot configure a new Contest while old Contest status is: " + v))
8179 else if ((s != e))
8280 then throw((("dAPP does not support currency: " + s) + " yet."))
8381 else {
84- let v = (t + (7 * 1440))
85- WriteSet([DataEntry("contest_currentnumber", o), DataEntry((("contest_" + toString(o)) + "_currency"), s), DataEntry((("contest_" + toString(o)) + "_startheight"), t), DataEntry((("contest_" + toString(o)) + "_finishheight"), v), DataEntry((("contest_" + toString(o)) + "_status"), a)])
82+ let w = (t + (7 * 1440))
83+ WriteSet([DataEntry("contest_currentnumber", o), DataEntry((("contest_" + toString(o)) + "_currency"), s), DataEntry((("contest_" + toString(o)) + "_startheight"), t), DataEntry((("contest_" + toString(o)) + "_finishheight"), w), DataEntry((("contest_" + toString(o)) + "_status"), a)])
8684 }
8785 }
8886
8987
9088
9189 @Callable(p)
92-func bet (w) = {
93- let x = base58'2B3mWxfnhAaCpJuqbkbiD6HVCTEcgwdmzxFCjZe65NYg'
90+func bet (x) = {
91+ let y = base58'2B3mWxfnhAaCpJuqbkbiD6HVCTEcgwdmzxFCjZe65NYg'
9492 let r = toBase58String(p.caller.bytes)
95- let y = extract(p.payment)
93+ let z = extract(p.payment)
9694 let o = g("contest_currentnumber")
9795 let t = g((("contest_" + toString(o)) + "startheight"))
98- let v = g((("contest_" + toString(o)) + "finishheight"))
96+ let w = g((("contest_" + toString(o)) + "finishheight"))
9997 let q = l((("contest_" + toString(o)) + "status"))
100- if ((height > (v - (2 * 1440))))
98+ if ((height > (w - (2 * 1440))))
10199 then throw("You cannot bet anymore at this height.")
102100 else if ((q != a))
103101 then throw("Invalid status: you cannot bet now.")
104- else if (if ((y.assetId != x))
102+ else if (if ((z.assetId != y))
105103 then true
106- else (y.amount != 500000))
104+ else (z.amount != 500000))
107105 then throw("You must pay 5 WLT to bet.")
108- else WriteSet([DataEntry(((("bet_" + toString(o)) + "_") + r), w)])
106+ else WriteSet([DataEntry(((("bet_" + toString(o)) + "_") + r), x)])
109107 }
110108
111109
112-@Verifier(z)
113-func A () = {
114- let j = z
110+@Verifier(A)
111+func B () = {
112+ let j = A
115113 if (if ($isInstanceOf(j, "SetScriptTransaction"))
116114 then true
117115 else $isInstanceOf(j, "DataTransaction"))
118- then sigVerify(z.bodyBytes, z.proofs[0], z.senderPublicKey)
116+ then sigVerify(A.bodyBytes, A.proofs[0], A.senderPublicKey)
119117 else if ($isInstanceOf(j, "InvokeScriptTransaction"))
120118 then true
121119 else true
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "RUNNING"
55
66 let b = "CLOSEDFORBETTING"
77
88 let c = "CLOSED"
99
1010 let d = "3N4NPivoThtskr7JxnNrKL7s8BzmRGx9rT2"
1111
1212 let e = "WAVES"
1313
1414 let f = "NONE"
1515
1616 func g (h) = {
1717 let i = {
1818 let j = getInteger(this, h)
1919 if ($isInstanceOf(j, "Int"))
2020 then {
2121 let k = j
2222 k
2323 }
2424 else 0
2525 }
2626 i
2727 }
2828
2929
3030 func l (h) = {
3131 let m = {
3232 let j = getString(this, h)
3333 if ($isInstanceOf(j, "String"))
3434 then {
3535 let k = j
3636 k
3737 }
3838 else f
3939 }
4040 m
4141 }
4242
4343
4444 func n () = {
4545 let o = g("contest_currentnumber")
4646 l((("contest_" + toString(o)) + "status"))
4747 }
4848
4949
5050 @Callable(p)
5151 func setContestStatus (q) = {
5252 let r = toBase58String(p.caller.bytes)
5353 let o = g("contest_currentnumber")
5454 if ((r != d))
5555 then throw("Only dAPP Owner can set Contest Status.")
5656 else if (if (if ((q != a))
5757 then (q != b)
5858 else false)
5959 then (q != c)
6060 else false)
6161 then throw(("Invalid status: " + q))
6262 else WriteSet([DataEntry((("contest_" + toString(o)) + "status"), q)])
6363 }
6464
6565
6666
6767 @Callable(p)
6868 func setContestConfiguration (s,t) = {
6969 let r = toBase58String(p.caller.bytes)
70- let q = n()
7170 let u = g("contest_currentnumber")
71+ let v = l((("contest_" + toString(u)) + "_status"))
7272 let o = (u + 1)
7373 if ((r != d))
7474 then throw("Only dAPP Owner can Configure Contest.")
7575 else if ((height >= t))
7676 then throw(("Start Height must be greater than current Blockchain height: " + toString(height)))
77- else if (if ((q != a))
78- then (q != f)
79- else false)
80- then throw(("You cannot configure Contest while status is: " + q))
77+ else if ((v == a))
78+ then throw(("You cannot configure a new Contest while old Contest status is: " + v))
8179 else if ((s != e))
8280 then throw((("dAPP does not support currency: " + s) + " yet."))
8381 else {
84- let v = (t + (7 * 1440))
85- WriteSet([DataEntry("contest_currentnumber", o), DataEntry((("contest_" + toString(o)) + "_currency"), s), DataEntry((("contest_" + toString(o)) + "_startheight"), t), DataEntry((("contest_" + toString(o)) + "_finishheight"), v), DataEntry((("contest_" + toString(o)) + "_status"), a)])
82+ let w = (t + (7 * 1440))
83+ WriteSet([DataEntry("contest_currentnumber", o), DataEntry((("contest_" + toString(o)) + "_currency"), s), DataEntry((("contest_" + toString(o)) + "_startheight"), t), DataEntry((("contest_" + toString(o)) + "_finishheight"), w), DataEntry((("contest_" + toString(o)) + "_status"), a)])
8684 }
8785 }
8886
8987
9088
9189 @Callable(p)
92-func bet (w) = {
93- let x = base58'2B3mWxfnhAaCpJuqbkbiD6HVCTEcgwdmzxFCjZe65NYg'
90+func bet (x) = {
91+ let y = base58'2B3mWxfnhAaCpJuqbkbiD6HVCTEcgwdmzxFCjZe65NYg'
9492 let r = toBase58String(p.caller.bytes)
95- let y = extract(p.payment)
93+ let z = extract(p.payment)
9694 let o = g("contest_currentnumber")
9795 let t = g((("contest_" + toString(o)) + "startheight"))
98- let v = g((("contest_" + toString(o)) + "finishheight"))
96+ let w = g((("contest_" + toString(o)) + "finishheight"))
9997 let q = l((("contest_" + toString(o)) + "status"))
100- if ((height > (v - (2 * 1440))))
98+ if ((height > (w - (2 * 1440))))
10199 then throw("You cannot bet anymore at this height.")
102100 else if ((q != a))
103101 then throw("Invalid status: you cannot bet now.")
104- else if (if ((y.assetId != x))
102+ else if (if ((z.assetId != y))
105103 then true
106- else (y.amount != 500000))
104+ else (z.amount != 500000))
107105 then throw("You must pay 5 WLT to bet.")
108- else WriteSet([DataEntry(((("bet_" + toString(o)) + "_") + r), w)])
106+ else WriteSet([DataEntry(((("bet_" + toString(o)) + "_") + r), x)])
109107 }
110108
111109
112-@Verifier(z)
113-func A () = {
114- let j = z
110+@Verifier(A)
111+func B () = {
112+ let j = A
115113 if (if ($isInstanceOf(j, "SetScriptTransaction"))
116114 then true
117115 else $isInstanceOf(j, "DataTransaction"))
118- then sigVerify(z.bodyBytes, z.proofs[0], z.senderPublicKey)
116+ then sigVerify(A.bodyBytes, A.proofs[0], A.senderPublicKey)
119117 else if ($isInstanceOf(j, "InvokeScriptTransaction"))
120118 then true
121119 else true
122120 }
123121

github/deemru/w8io/873ac7e 
41.61 ms