tx · 3T3QWCpwTav96CeGZUnVBxC1CqKnmG62orvbLjrA83Kq

3N4mapsqVLDdiatjTF2rYB5KiLn2e6Y4eJb:  -0.01400000 Waves

2019.01.30 10:19 [472687] smart account 3N4mapsqVLDdiatjTF2rYB5KiLn2e6Y4eJb > SELF 0.00000000 Waves

{ "type": 13, "id": "3T3QWCpwTav96CeGZUnVBxC1CqKnmG62orvbLjrA83Kq", "fee": 1400000, "feeAssetId": null, "timestamp": 1548832720868, "version": 1, "sender": "3N4mapsqVLDdiatjTF2rYB5KiLn2e6Y4eJb", "senderPublicKey": "BTdTmTBfL5TMXno6wjKmpDfg3m4L5A71Kaujb4kJtuYe", "proofs": [ "5chPTyPAper8QSu6i8yrLstTz8oncskjr9yjMnz1PuZPR5QZuPgvN6K49TepSVDkVyTxefStvsNs6HiZKCYNeFQb" ], "script": "base64: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", "chainId": 84, "height": 472687, "spentComplexity": 0 } View: original | compacted Prev: CUFgJxqH9KNMoL3GmT5sFmK4a8jND6ee8qsPX8S6Pbsj Next: 3jzSpKTVV2n1oc6ZTZahe9Fp6KnL7HMN6zdS1sohfUUt Diff:
OldNewDifferences
1515 let attach = toBase58String(sha256(aT.attachment))
1616 match feeTransferId {
1717 case fT: TransferTransaction =>
18- if (if (if (if (if (if (if (if (if (!(isDefined(getString(voteBank, d.data[0].key))))
18+ if (if (if (if (if (!(isDefined(getString(voteBank, d.data[0].key))))
1919 then isDefined(getString(aT.sender, "YES"))
2020 else false)
2121 then isDefined(getString(aT.sender, "NO"))
2525 then (fT.recipient == voteBank)
2626 else false)
2727 then (fT.amount >= (aT.amount * 500000))
28- else false)
29- then (d.data[0].key == toBase58String(sha256(aT.attachment)))
30- else false)
31- then (d.data[0].key == toBase58String(sha256(fT.attachment)))
32- else false)
33- then (d.data[1].key == (toBase58String(sha256(fT.attachment)) + "_height"))
34- else false)
35- then (d.data[2].key == (toBase58String(sha256(fT.attachment)) + "_asset"))
3628 else false
3729 case _ =>
3830 false
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 1 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
33 let voteBank = addressFromPublicKey(fromBase58String("BTdTmTBfL5TMXno6wjKmpDfg3m4L5A71Kaujb4kJtuYe"))
44 let minimalVotingHeight = 10
55 match tx {
66 case d: DataTransaction =>
77 if (if ((size(d.data) == 3))
88 then (size(d.proofs) == 4)
99 else false)
1010 then {
1111 let assetTranserId = transactionById(d.proofs[1])
1212 let feeTransferId = transactionById(d.proofs[0])
1313 match assetTranserId {
1414 case aT: TransferTransaction =>
1515 let attach = toBase58String(sha256(aT.attachment))
1616 match feeTransferId {
1717 case fT: TransferTransaction =>
18- if (if (if (if (if (if (if (if (if (!(isDefined(getString(voteBank, d.data[0].key))))
18+ if (if (if (if (if (!(isDefined(getString(voteBank, d.data[0].key))))
1919 then isDefined(getString(aT.sender, "YES"))
2020 else false)
2121 then isDefined(getString(aT.sender, "NO"))
2222 else false)
2323 then (aT.recipient == voteBank)
2424 else false)
2525 then (fT.recipient == voteBank)
2626 else false)
2727 then (fT.amount >= (aT.amount * 500000))
28- else false)
29- then (d.data[0].key == toBase58String(sha256(aT.attachment)))
30- else false)
31- then (d.data[0].key == toBase58String(sha256(fT.attachment)))
32- else false)
33- then (d.data[1].key == (toBase58String(sha256(fT.attachment)) + "_height"))
34- else false)
35- then (d.data[2].key == (toBase58String(sha256(fT.attachment)) + "_asset"))
3628 else false
3729 case _ =>
3830 false
3931 }
4032 case _ =>
4133 false
4234 }
4335 }
4436 else false
4537 case t: TransferTransaction =>
4638 if (isDefined(getString(voteBank, toBase58String(t.attachment))))
4739 then {
4840 let voteStarter = extract(addressFromString(extract(getString(voteBank, toBase58String(sha256(t.attachment))))))
4941 if (if (if (if (if (if ((extract(getInteger(voteBank, (toBase58String(sha256(t.attachment)) + "_height"))) > height))
5042 then if ((addressFromRecipient(t.recipient) == addressFromString(extract(getString(voteStarter, "YES")))))
5143 then true
5244 else (addressFromRecipient(t.recipient) == addressFromString(extract(getString(voteStarter, "NO"))))
5345 else false)
5446 then (t.assetId == extract(getBinary(voteStarter, (toBase58String(t.attachment) + "_asset"))))
5547 else false)
5648 then (t.amount == 1)
5749 else false)
5850 then (t.fee == 500000)
5951 else false)
6052 then (wavesBalance(t.sender) > 100000000)
6153 else false)
6254 then sigVerify(t.bodyBytes, t.proofs[0], tx.senderPublicKey)
6355 else false
6456 }
6557 else false
6658 case s: SetScriptTransaction =>
6759 sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
6860 case _ =>
6961 false
7062 }

github/deemru/w8io/169f3d6 
132.74 ms