tx · EdjELS2tYcbYk2kxeMES5tRyLLve4uAT3Muf6A1N4iiT

3N2hBea4tJ4vmGdTnr7iGEfeCwsDkLyCbWK:  -0.14000000 Waves

2018.12.25 16:35 [420574] smart account 3N2hBea4tJ4vmGdTnr7iGEfeCwsDkLyCbWK > SELF 0.00000000 Waves

{ "type": 13, "id": "EdjELS2tYcbYk2kxeMES5tRyLLve4uAT3Muf6A1N4iiT", "fee": 14000000, "feeAssetId": null, "timestamp": 1545744993330, "version": 1, "sender": "3N2hBea4tJ4vmGdTnr7iGEfeCwsDkLyCbWK", "senderPublicKey": "9vCFiiQT1mT2SMoSSoShakxyfJND9mzVDfjiaiVdh7y5", "proofs": [ "3mNxB1WiuH56mZWKuTo8YRS3kmoE7xJDo69ZSUYt8WAdAfAWHRCC7Ty7manMHUyCZ545eAursmZMiycpbaHgLXCi" ], "script": "base64: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", "chainId": 84, "height": 420574, "spentComplexity": 0 } View: original | compacted Prev: 4GAzhm15hMAEQYALpBHaZuhy1StHvZhkd73xS2Bk5E71 Next: CCJTvVdNy3VFwARMQemjiRfnYjL2Ei3Q3RgXx8XP5EXq Full:
OldNewDifferences
11 {-# STDLIB_VERSION 1 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
3-true
3+let this = extract(tx.sender)
4+let asset = base58'ExHsMiLc9eWokuf95Xwpr2SosZ7FejAqGepk1wWXrQFQ'
5+let N = extract(getInteger(this, "N"))
6+let lastUpdate = extract(getInteger(this, "lastUpdate"))
7+let balanceOnLastUpdate = extract(getInteger(this, "balanceOnLastUpdate"))
8+let currentBalance = assetBalance(this, asset)
9+let validityPeriod = 1000
10+let C = 10
11+let denominator = 100
12+match tx {
13+ case tx: TransferTransaction =>
14+ let firstBytes = toBase58String(take(tx.id, N))
15+ let transferAmount = ((currentBalance / denominator) + 1)
16+ if (if (if (if (if ((validityPeriod > (height - lastUpdate)))
17+ then isDefined(getBoolean(this, firstBytes))
18+ else false)
19+ then (tx.amount == transferAmount)
20+ else false)
21+ then (tx.assetId == asset)
22+ else false)
23+ then (tx.fee == 500000)
24+ else false)
25+ then !(isDefined(tx.feeAssetId))
26+ else false
27+ case tx: DataTransaction =>
28+ let newN = ((N + (if (((balanceOnLastUpdate - currentBalance) > (validityPeriod * C)))
29+ then 1
30+ else 0)) + (if (((validityPeriod / C) > (balanceOnLastUpdate - currentBalance)))
31+ then -1
32+ else 0))
33+ if (if (if (if (if (((height - lastUpdate) >= validityPeriod))
34+ then (size(tx.data) == 3)
35+ else false)
36+ then (extract(getInteger(tx.data, "N")) == (if ((newN > 0))
37+ then newN
38+ else 1))
39+ else false)
40+ then (extract(getInteger(tx.data, "lastUpdate")) == height)
41+ else false)
42+ then (extract(getInteger(tx.data, "balanceOnLastUpdate")) == currentBalance)
43+ else false)
44+ then (tx.fee == 500000)
45+ else false
46+ case _ =>
47+ sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
48+}

github/deemru/w8io/169f3d6 
30.42 ms