tx · 2T7ewdrDAtJH3sgWaLJFjdGte2E3tTcPh5tu59zo9bKj 3N3Bsb6cBEFXxxXYK3P18A6boegYcJtzV6c: -0.01000000 Waves 2019.03.04 17:17 [521254] smart account 3N3Bsb6cBEFXxxXYK3P18A6boegYcJtzV6c > SELF 0.00000000 Waves
{ "type": 13, "id": "2T7ewdrDAtJH3sgWaLJFjdGte2E3tTcPh5tu59zo9bKj", "fee": 1000000, "feeAssetId": null, "timestamp": 1551709134944, "version": 1, "sender": "3N3Bsb6cBEFXxxXYK3P18A6boegYcJtzV6c", "senderPublicKey": "AqBHTsCtnV1LE6gdpnR8sqvQvdTkpUdmprUYvjYnXjek", "proofs": [ "CcZC4Fjm1Vngc6D3SeSAwPUMkzo14LC2RUCSqzoi43HLLisudbcuTjYwc8EYyFwSSLoiRU8PaDFVQZANgK9vP41" ], "script": "base64:AQQAAAAGc2VuZGVyCAUAAAACdHgAAAAGc2VuZGVyBAAAAAVhc3NldAEAAAAg4gLVv2kuVAAxgmMDQJDM0MzAVARF8Kdg3AWkh5R5Y2AEAAAACmRpZmZpY3VsdHkJAQAAAAdleHRyYWN0AAAAAQkABBoAAAACBQAAAAZzZW5kZXICAAAACmRpZmZpY3VsdHkEAAAAEGxhc3RVcGRhdGVIZWlnaHQJAQAAAAdleHRyYWN0AAAAAQkABBoAAAACBQAAAAZzZW5kZXICAAAAEGxhc3RVcGRhdGVIZWlnaHQEAAAAEWxhc3RVcGRhdGVCYWxhbmNlCQEAAAAHZXh0cmFjdAAAAAEJAAQaAAAAAgUAAAAGc2VuZGVyAgAAABFsYXN0VXBkYXRlQmFsYW5jZQQAAAAOY3VycmVudEJhbGFuY2UJAAPrAAAAAgUAAAAGc2VuZGVyBQAAAAVhc3NldAQAAAAOdmFsaWRpdHlQZXJpb2QAAAAAAAAAABQEAAAAByRtYXRjaDAFAAAAAnR4AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABNUcmFuc2ZlclRyYW5zYWN0aW9uBAAAAAJ0eAUAAAAHJG1hdGNoMAQAAAAKZmlyc3RCeXRlcwkAAlgAAAABCQAAyQAAAAIIBQAAAAJ0eAAAAAJpZAUAAAAKZGlmZmljdWx0eQMDAwMDCQAAZgAAAAIFAAAADnZhbGlkaXR5UGVyaW9kCQAAZQAAAAIFAAAABmhlaWdodAUAAAAQbGFzdFVwZGF0ZUhlaWdodAkBAAAACWlzRGVmaW5lZAAAAAEJAAQbAAAAAgUAAAAGc2VuZGVyBQAAAApmaXJzdEJ5dGVzBwkAAAAAAAACCAUAAAACdHgAAAAGYW1vdW50AAAAAAAAAAABBwkAAAAAAAACCAUAAAACdHgAAAAHYXNzZXRJZAUAAAAFYXNzZXQHCQAAAAAAAAIIBQAAAAJ0eAAAAANmZWUAAAAAAAAHoSAHCQEAAAABIQAAAAEJAQAAAAlpc0RlZmluZWQAAAABCAUAAAACdHgAAAAKZmVlQXNzZXRJZAcDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0RhdGFUcmFuc2FjdGlvbgQAAAACdHgFAAAAByRtYXRjaDAEAAAADW5ld0RpZmZpY3VsdHkDCQAAAAAAAAIFAAAACmRpZmZpY3VsdHkAAAAAAAAAAAIAAAAAAAAAAAMAAAAAAAAAAAIDAwMDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAnR4AAAABGRhdGEAAAAAAAAAAAMJAAAAAAAAAgkBAAAAB2V4dHJhY3QAAAABCQAEEAAAAAIIBQAAAAJ0eAAAAARkYXRhAgAAAApkaWZmaWN1bHR5BQAAAA1uZXdEaWZmaWN1bHR5BwkAAAAAAAACCQEAAAAHZXh0cmFjdAAAAAEJAAQQAAAAAggFAAAAAnR4AAAABGRhdGECAAAAEGxhc3RVcGRhdGVIZWlnaHQFAAAABmhlaWdodAcJAAAAAAAAAgkBAAAAB2V4dHJhY3QAAAABCQAEEAAAAAIIBQAAAAJ0eAAAAARkYXRhAgAAABFsYXN0VXBkYXRlQmFsYW5jZQUAAAAOY3VycmVudEJhbGFuY2UHCQAAAAAAAAIIBQAAAAJ0eAAAAANmZWUAAAAAAAAHoSAHCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleVWpzQI=", "chainId": 84, "height": 521254, "spentComplexity": 0 } View: original | compacted Prev: none Next: 83zDhjymZhtyMG4VS8Wa8denG7KjxQ8yWbvv7zt1No3k Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 1 #-} | |
2 | + | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | + | let sender = tx.sender | |
4 | + | let asset = base58'GDFeXJjyasFBgxQJsLrkEBjZoB1x4rkpJN12fG7NE8RV' | |
5 | + | let difficulty = extract(getInteger(sender, "difficulty")) | |
6 | + | let lastUpdateHeight = extract(getInteger(sender, "lastUpdateHeight")) | |
7 | + | let lastUpdateBalance = extract(getInteger(sender, "lastUpdateBalance")) | |
8 | + | let currentBalance = assetBalance(sender, asset) | |
9 | + | let validityPeriod = 20 | |
10 | + | match tx { | |
11 | + | case tx: TransferTransaction => | |
12 | + | let firstBytes = toBase58String(take(tx.id, difficulty)) | |
13 | + | if (if (if (if (if ((validityPeriod > (height - lastUpdateHeight))) | |
14 | + | then isDefined(getBoolean(sender, firstBytes)) | |
15 | + | else false) | |
16 | + | then (tx.amount == 1) | |
17 | + | else false) | |
18 | + | then (tx.assetId == asset) | |
19 | + | else false) | |
20 | + | then (tx.fee == 500000) | |
21 | + | else false) | |
22 | + | then !(isDefined(tx.feeAssetId)) | |
23 | + | else false | |
24 | + | case tx: DataTransaction => | |
25 | + | let newDifficulty = if ((difficulty == 2)) | |
26 | + | then 3 | |
27 | + | else 2 | |
28 | + | if (if (if (if ((size(tx.data) == 3)) | |
29 | + | then (extract(getInteger(tx.data, "difficulty")) == newDifficulty) | |
30 | + | else false) | |
31 | + | then (extract(getInteger(tx.data, "lastUpdateHeight")) == height) | |
32 | + | else false) | |
33 | + | then (extract(getInteger(tx.data, "lastUpdateBalance")) == currentBalance) | |
34 | + | else false) | |
35 | + | then (tx.fee == 500000) | |
36 | + | else false | |
37 | + | case _ => | |
38 | + | sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
39 | + | } |
github/deemru/w8io/026f985 20.51 ms ◑