tx · 75ykh2ToigJ7Dgy7b3JmxyUabdNAv7ijpHPrnj3DZFUB

3P3tLiDmaAiTZD7sRA3djWqYazpoNcg6drT:  -0.01400000 Waves

2019.02.26 17:02 [1413724] smart account 3P3tLiDmaAiTZD7sRA3djWqYazpoNcg6drT > SELF 0.00000000 Waves

{ "type": 13, "id": "75ykh2ToigJ7Dgy7b3JmxyUabdNAv7ijpHPrnj3DZFUB", "fee": 1400000, "feeAssetId": null, "timestamp": 1551189652085, "version": 1, "sender": "3P3tLiDmaAiTZD7sRA3djWqYazpoNcg6drT", "senderPublicKey": "CanMZkMmTYKHVLqKXrVMXTHuyUtag853a8ti9m1LHYFa", "proofs": [ "35bAmBVEhzAm18y8jNX2K7XpJwZfjJmjyP97HapPdGgMJt63hQBpnGVuYxrjpifiifu7mujdYocYV2b7Z6KdZpd1" ], "script": "base64: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", "chainId": 87, "height": 1413724, "spentComplexity": 0 } View: original | compacted Prev: 4PNVzgTYmjfPRfnLWr3mvrTW7Z8nViiwTGpSeCfV9pm7 Next: J3JfwJ5T9oA56yjkNtLenUYKwuzGpAL2kn6FqBc4f9D8 Diff:
OldNewDifferences
66 let lastUpdateHeight = extract(getInteger(sender, "lastUpdateHeight"))
77 let lastUpdateBalance = extract(getInteger(sender, "lastUpdateBalance"))
88 let currentBalance = assetBalance(sender, asset)
9-let validityPeriod = 200
10-let transferAmount = 10
11-let miningRate = 20000
9+let validityPeriod = 15
10+let transferAmount = 5
11+let miningRate = 2000
1212 let minN = 2
13-let maxN = 8
13+let maxN = 32
1414 match tx {
1515 case tx: TransferTransaction =>
1616 let firstBytes = toBase58String(take(tx.id, N))
17- if (if (if (if (if ((validityPeriod > (height - lastUpdateHeight)))
17+ if (if (if (if (if (if ((validityPeriod > (height - lastUpdateHeight)))
1818 then isDefined(getBoolean(sender, firstBytes))
1919 else false)
2020 then (tx.amount == transferAmount)
2424 then (tx.fee == 500000)
2525 else false)
2626 then !(isDefined(tx.feeAssetId))
27+ else false)
28+ then (tx.attachment == toBytes(lastUpdateHeight))
2729 else false
2830 case tx: DataTransaction =>
29- let deltaN = (((lastUpdateBalance - currentBalance) / miningRate) - 1)
31+ let deltaN = if ((miningRate > (lastUpdateBalance - currentBalance)))
32+ then -1
33+ else 1
3034 let newN = if ((minN > (N + deltaN)))
3135 then minN
3236 else if (((N + deltaN) > maxN))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 1 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
33 let sender = tx.sender
44 let asset = base58'BXSAEa9jm9Qrkmn2XPqqKBkukZoBkJ8YpQ9EZywjdnnx'
55 let N = extract(getInteger(sender, "N"))
66 let lastUpdateHeight = extract(getInteger(sender, "lastUpdateHeight"))
77 let lastUpdateBalance = extract(getInteger(sender, "lastUpdateBalance"))
88 let currentBalance = assetBalance(sender, asset)
9-let validityPeriod = 200
10-let transferAmount = 10
11-let miningRate = 20000
9+let validityPeriod = 15
10+let transferAmount = 5
11+let miningRate = 2000
1212 let minN = 2
13-let maxN = 8
13+let maxN = 32
1414 match tx {
1515 case tx: TransferTransaction =>
1616 let firstBytes = toBase58String(take(tx.id, N))
17- if (if (if (if (if ((validityPeriod > (height - lastUpdateHeight)))
17+ if (if (if (if (if (if ((validityPeriod > (height - lastUpdateHeight)))
1818 then isDefined(getBoolean(sender, firstBytes))
1919 else false)
2020 then (tx.amount == transferAmount)
2121 else false)
2222 then (tx.assetId == asset)
2323 else false)
2424 then (tx.fee == 500000)
2525 else false)
2626 then !(isDefined(tx.feeAssetId))
27+ else false)
28+ then (tx.attachment == toBytes(lastUpdateHeight))
2729 else false
2830 case tx: DataTransaction =>
29- let deltaN = (((lastUpdateBalance - currentBalance) / miningRate) - 1)
31+ let deltaN = if ((miningRate > (lastUpdateBalance - currentBalance)))
32+ then -1
33+ else 1
3034 let newN = if ((minN > (N + deltaN)))
3135 then minN
3236 else if (((N + deltaN) > maxN))
3337 then maxN
3438 else (N + deltaN)
3539 if (if (if (if (if (((height - lastUpdateHeight) >= validityPeriod))
3640 then (size(tx.data) == 3)
3741 else false)
3842 then (extract(getInteger(tx.data, "N")) == newN)
3943 else false)
4044 then (extract(getInteger(tx.data, "lastUpdateHeight")) == height)
4145 else false)
4246 then (extract(getInteger(tx.data, "lastUpdateBalance")) == currentBalance)
4347 else false)
4448 then (tx.fee == 500000)
4549 else false
4650 case _ =>
4751 sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
4852 }

github/deemru/w8io/3ef1775 
119.25 ms