tx · 2ibat8Ltf46uRAdm3hd6tVqE3fX7A7PcJY5UXBKYW5fD

3MqwsV7FJ5ZSt8oeN1oHmhvsLfJKJ1rz2bh:  -0.01000000 Waves

2018.12.16 12:35 [407200] smart account 3MqwsV7FJ5ZSt8oeN1oHmhvsLfJKJ1rz2bh > SELF 0.00000000 Waves

{ "type": 13, "id": "2ibat8Ltf46uRAdm3hd6tVqE3fX7A7PcJY5UXBKYW5fD", "fee": 1000000, "feeAssetId": null, "timestamp": 1544952874480, "version": 1, "sender": "3MqwsV7FJ5ZSt8oeN1oHmhvsLfJKJ1rz2bh", "senderPublicKey": "Add5BEz2Smf2oFrUxd5sxaZFC2TiAPf6r1A7ozPx2Sj", "proofs": [ "4iGG1nwtqXqpbYPUsTCCDD3YaAttLd2kT16rtT6bqFgpRGutoE9BGDSG4B7Aa5PyB4M9gibPXQPYcMLbFuehZw4g" ], "script": "base64:AQQAAAAHY3JlYXRvcgkBAAAAEWFkZHJlc3NGcm9tU3RyaW5nAAAAAQIAAAAjM05DdDJqcm4xMkdaaVdDVXhibkN0cFlOeFd3NFhEcDNHRXkEAAAAAm1lCAUAAAACdHgAAAAGc2VuZGVyBAAAAAR3YXZlAAAAAAAF9eEABAAAAApzZWNyZXRIYXNoAQAAACAw0Q6yeBIfNkuVrxoao8wWuv2QD4OVaujfHDPqa+y0mgQAAAAHJG1hdGNoMAUAAAACdHgDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0RhdGFUcmFuc2FjdGlvbgQAAAABdAUAAAAHJG1hdGNoMAMJAQAAAAEhAAAAAQkBAAAACWlzRGVmaW5lZAAAAAEJAAQcAAAAAgUAAAACbWUCAAAAB3BheW1lbnQEAAAACXBheW1lbnRUeAkAA+gAAAABCQEAAAAHZXh0cmFjdAAAAAEJAAQSAAAAAggFAAAAAXQAAAAEZGF0YQIAAAAHcGF5bWVudAQAAAAOaXNQYXltZW50VmFsaWQEAAAAByRtYXRjaDEFAAAACXBheW1lbnRUeAMJAAABAAAAAgUAAAAHJG1hdGNoMQIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAAHcGF5bWVudAUAAAAHJG1hdGNoMQMDCQAAAAAAAAIIBQAAAAdwYXltZW50AAAABmFtb3VudAkAAGgAAAACAAAAAAAAAAABBQAAAAR3YXZlCQAAAAAAAAIIBQAAAAdwYXltZW50AAAACXJlY2lwaWVudAUAAAACbWUHCQAB9AAAAAMIBQAAAAdwYXltZW50AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAAHcGF5bWVudAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAdwYXltZW50AAAAD3NlbmRlclB1YmxpY0tleQcHBAAAAAVndWVzcwkBAAAAB2V4dHJhY3QAAAABCQAEEgAAAAIIBQAAAAF0AAAABGRhdGECAAAABWd1ZXNzAwMFAAAADmlzUGF5bWVudFZhbGlkCQAAAAAAAAIJAADIAAAAAQUAAAAFZ3Vlc3MAAAAAAAAAAAEHCQAAAAAAAAIJAAGQAAAAAQgFAAAAAXQAAAAEZGF0YQAAAAAAAAAAAgcHAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABNUcmFuc2ZlclRyYW5zYWN0aW9uBAAAAAZwYXlvdXQFAAAAByRtYXRjaDAEAAAABnNlY3JldAkAAMkAAAACCQABkQAAAAIIBQAAAAZwYXlvdXQAAAAGcHJvb2ZzAAAAAAAAAAAAAAAAAAAAAAABBAAAAAxpc1Byb29mVmFsaWQJAAAAAAAAAgkAAfcAAAABCQABkQAAAAIIBQAAAAZwYXlvdXQAAAAGcHJvb2ZzAAAAAAAAAAAABQAAAApzZWNyZXRIYXNoBAAAAAdndWVzc2VyBAAAAAckbWF0Y2gxCQAD6AAAAAEJAQAAAAdleHRyYWN0AAAAAQkABBwAAAACBQAAAAJtZQIAAAAHcGF5bWVudAMJAAABAAAAAgUAAAAHJG1hdGNoMQIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAABcAUAAAAHJG1hdGNoMQgFAAAAAXAAAAAGc2VuZGVyCQEAAAARYWRkcmVzc0Zyb21TdHJpbmcAAAABAgAAAAAEAAAABndpbm5lcgMJAAAAAAAAAgkBAAAAB2V4dHJhY3QAAAABCQAEHAAAAAIFAAAAAm1lAgAAAAVndWVzcwUAAAAGc2VjcmV0BQAAAAdndWVzc2VyBQAAAAdjcmVhdG9yAwMFAAAADGlzUHJvb2ZWYWxpZAkAAAAAAAACCAUAAAAGcGF5b3V0AAAACXJlY2lwaWVudAUAAAAGd2lubmVyBwkAAGcAAAACCQAAaQAAAAIFAAAABHdhdmUAAAAAAAAAAMgIBQAAAAZwYXlvdXQAAAADZmVlBwc4uzdd", "chainId": 84, "height": 407200, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 1 #-}
2+{-# CONTENT_TYPE EXPRESSION #-}
3+let creator = addressFromString("3NCt2jrn12GZiWCUxbnCtpYNxWw4XDp3GEy")
4+let me = tx.sender
5+let wave = 100000000
6+let secretHash = base58'4HZTjZGTbqX5388vy1rCLoG3Pp9p3mXQfB41uuxbkwu3'
7+match tx {
8+ case t: DataTransaction =>
9+ if (!(isDefined(getBinary(me, "payment"))))
10+ then {
11+ let paymentTx = transactionById(extract(getBinary(t.data, "payment")))
12+ let isPaymentValid = match paymentTx {
13+ case payment: TransferTransaction =>
14+ if (if ((payment.amount == (1 * wave)))
15+ then (payment.recipient == me)
16+ else false)
17+ then sigVerify(payment.bodyBytes, payment.proofs[0], payment.senderPublicKey)
18+ else false
19+ case _ =>
20+ false
21+ }
22+ let guess = extract(getBinary(t.data, "guess"))
23+ if (if (isPaymentValid)
24+ then (size(guess) == 1)
25+ else false)
26+ then (size(t.data) == 2)
27+ else false
28+ }
29+ else false
30+ case payout: TransferTransaction =>
31+ let secret = take(payout.proofs[0], 1)
32+ let isProofValid = (sha256(payout.proofs[0]) == secretHash)
33+ let guesser = match transactionById(extract(getBinary(me, "payment"))) {
34+ case p: TransferTransaction =>
35+ p.sender
36+ case _ =>
37+ addressFromString("")
38+ }
39+ let winner = if ((extract(getBinary(me, "guess")) == secret))
40+ then guesser
41+ else creator
42+ if (if (isProofValid)
43+ then (payout.recipient == winner)
44+ else false)
45+ then ((wave / 200) >= payout.fee)
46+ else false
47+ case _ =>
48+ false
49+}

github/deemru/w8io/03bedc9 
14.32 ms