tx · 9gdM8hF2NEjCpckmUG6MA8bwxo1RqRsXhmRrp4QJ8JNv 3NCN79gCSaKTFV6fDoEzELoxDMrAUTCekd5: -0.01400000 Waves 2019.09.17 17:50 [680385] smart account 3NCN79gCSaKTFV6fDoEzELoxDMrAUTCekd5 > SELF 0.00000000 Waves
{ "type": 13, "id": "9gdM8hF2NEjCpckmUG6MA8bwxo1RqRsXhmRrp4QJ8JNv", "fee": 1400000, "feeAssetId": null, "timestamp": 1568731815292, "version": 1, "sender": "3NCN79gCSaKTFV6fDoEzELoxDMrAUTCekd5", "senderPublicKey": "4tD3VgZ1AmHzY7q1KZpn2mAkpMbBoXVAKSw3FRP9EXfT", "proofs": [ "4kcwwvcJYFMGby7Yr9DZfPMTbCAwNoUdM1NU7a9V2hxsVnsBqg7cNQER9fzU2VB3sw1jFeaJtpEuqXMGSTdTjowk" ], "script": "base64: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", "chainId": 84, "height": 680385, "spentComplexity": 0 } View: original | compacted Prev: EzX2SmyW5zpsq8nA4DvxtBvuWcxidTgakjNzmo7M4Js3 Next: 9UBWWmJ9eXznmwmiQrs4JijXRPYJ6E6MK4bqCKq42X8n Diff:
Old | New | Differences | |
---|---|---|---|
4 | 4 | case d: DataTransaction => | |
5 | 5 | let k0 = d.data[0].key | |
6 | 6 | let event = take(k0, (size(k0) - 5)) | |
7 | - | let txid = extract(getString(d.data, (event + "_ | |
7 | + | let txid = extract(getString(d.data, (event + "_tx"))) | |
8 | 8 | let exchangeTx = extract( match transactionById(fromBase58String(txid)) { | |
9 | 9 | case e: ExchangeTransaction => | |
10 | 10 | e |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 2 #-} | |
2 | 2 | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | 3 | match tx { | |
4 | 4 | case d: DataTransaction => | |
5 | 5 | let k0 = d.data[0].key | |
6 | 6 | let event = take(k0, (size(k0) - 5)) | |
7 | - | let txid = extract(getString(d.data, (event + "_ | |
7 | + | let txid = extract(getString(d.data, (event + "_tx"))) | |
8 | 8 | let exchangeTx = extract( match transactionById(fromBase58String(txid)) { | |
9 | 9 | case e: ExchangeTransaction => | |
10 | 10 | e | |
11 | 11 | case _ => | |
12 | 12 | unit | |
13 | 13 | }) | |
14 | 14 | let prevTs = getInteger(tx.sender, (event + "_timestamp")) | |
15 | 15 | let eventTs = takeRight(event, 10) | |
16 | 16 | if (if (if (if (if (if (if (if (if (if ((size(d.data) == 4)) | |
17 | 17 | then (d.data[0].key == (event + "_rate")) | |
18 | 18 | else false) | |
19 | 19 | then (d.data[1].key == (event + "_timestamp")) | |
20 | 20 | else false) | |
21 | 21 | then (d.data[2].key == (event + "_tx")) | |
22 | 22 | else false) | |
23 | 23 | then (d.data[3].key == (event + "_eventts")) | |
24 | 24 | else false) | |
25 | 25 | then (d.data[0].value == exchangeTx.price) | |
26 | 26 | else false) | |
27 | 27 | then (d.data[1].value == exchangeTx.timestamp) | |
28 | 28 | else false) | |
29 | 29 | then (d.data[2].value == txid) | |
30 | 30 | else false) | |
31 | 31 | then if (!(isDefined(prevTs))) | |
32 | 32 | then true | |
33 | 33 | else (extract(prevTs) > exchangeTx.timestamp) | |
34 | 34 | else false) | |
35 | 35 | then (toString(extract(getInteger(d.data, (event + "_eventts")))) == eventTs) | |
36 | 36 | else false) | |
37 | 37 | then (exchangeTx.timestamp >= extract(getInteger(d.data, (event + "_eventts")))) | |
38 | 38 | else false | |
39 | 39 | case _ => | |
40 | 40 | sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
41 | 41 | } |
github/deemru/w8io/169f3d6 27.86 ms ◑