tx · 9SM9k1bUiBPLwieRAzfbkjALXXj7Cum12oGiWXs6aNDH

3Mpfd3hihdPKUHqWqC9KYjcM18BKw91VkKe:  -0.01400000 Waves

2019.01.29 10:32 [471243] smart account 3Mpfd3hihdPKUHqWqC9KYjcM18BKw91VkKe > SELF 0.00000000 Waves

{ "type": 13, "id": "9SM9k1bUiBPLwieRAzfbkjALXXj7Cum12oGiWXs6aNDH", "fee": 1400000, "feeAssetId": null, "timestamp": 1548747164613, "version": 1, "sender": "3Mpfd3hihdPKUHqWqC9KYjcM18BKw91VkKe", "senderPublicKey": "4f1JNnYPBjnrCyRNwNpfg2zg6V34QG4EBF8a2o2yz9rg", "proofs": [ "4GxawWQMB8tCNPkDLBcUw8nd5b5ZEu5sLLWqVsZWUArdcbK53RLpoe7RP84VFoLqXuRBy5yoMVZ4qJ5LPAaA9Mgq" ], "script": "base64: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", "chainId": 84, "height": 471243, "spentComplexity": 0 } View: original | compacted Prev: AJYCTu1FSYnDCX2G4dTNugkeWgu4KAyY26oZdGp5vk78 Next: GS7XuzdzJq7QrK6bBT32XnKXqSQLbkEDCJwfU9hV2bbT Diff:
OldNewDifferences
3939 else if ((c == 7))
4040 then "0000000"
4141 else "")) + toString(dBet))
42- false
42+ match paymentTx {
43+ case payment: TransferTransaction =>
44+ if (if (if (if (!(isDefined(getString(tx.sender, paymentTxId))))
45+ then (payment.recipient == tx.sender)
46+ else false)
47+ then (payment.amount > fee)
48+ else false)
49+ then (extract(getInteger(dt.data, "totalMoney")) == (totalMoney + (payment.amount - fee)))
50+ else false)
51+ then (vBet == ((iBet * multiply) + dBet))
52+ else false
53+ case _ =>
54+ false
55+ }
4356 }
4457 else if (if ((tx.timestamp > maxTimeToTrading))
4558 then !(isDefined(getString(tx.sender, "tradingTxId")))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 1 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
33 let maxTimeToBet = 1549000217000
44 let minTimeToTrading = 1549086617000
55 let maxTimeToTrading = 1549086677000
66 let fee = 10000000
77 let decimals = 2
88 let multiply = 100
99 let totalMoney = 0
1010 match tx {
1111 case dt: DataTransaction =>
1212 if (if ((maxTimeToBet >= tx.timestamp))
1313 then isDefined(getString(dt.data, "bet_s"))
1414 else false)
1515 then {
1616 let paymentTxId = extract(getString(dt.data, "paymentTxId"))
1717 let paymentTx = transactionById(fromBase58String(paymentTxId))
1818 let betGroup = extract(getString(dt.data, "bet_s"))
1919 let dtBetSummary = extract(getInteger(dt.data, betGroup))
2020 let betSummary = if (isDefined(getInteger(tx.sender, betGroup)))
2121 then extract(getInteger(tx.sender, betGroup))
2222 else 0
2323 let vBet = extract(getInteger(dt.data, "bet_v"))
2424 let iBet = extract(getInteger(dt.data, "bet_i"))
2525 let dBet = extract(getInteger(dt.data, "bet_d"))
2626 let c = (decimals - size(toString(dBet)))
2727 let tBet = (((toString(iBet) + ".") + (if ((c == 1))
2828 then "0"
2929 else if ((c == 2))
3030 then "00"
3131 else if ((c == 3))
3232 then "000"
3333 else if ((c == 4))
3434 then "0000"
3535 else if ((c == 5))
3636 then "00000"
3737 else if ((c == 6))
3838 then "000000"
3939 else if ((c == 7))
4040 then "0000000"
4141 else "")) + toString(dBet))
42- false
42+ match paymentTx {
43+ case payment: TransferTransaction =>
44+ if (if (if (if (!(isDefined(getString(tx.sender, paymentTxId))))
45+ then (payment.recipient == tx.sender)
46+ else false)
47+ then (payment.amount > fee)
48+ else false)
49+ then (extract(getInteger(dt.data, "totalMoney")) == (totalMoney + (payment.amount - fee)))
50+ else false)
51+ then (vBet == ((iBet * multiply) + dBet))
52+ else false
53+ case _ =>
54+ false
55+ }
4356 }
4457 else if (if ((tx.timestamp > maxTimeToTrading))
4558 then !(isDefined(getString(tx.sender, "tradingTxId")))
4659 else false)
4760 then {
4861 let tradingTxId = extract(getString(dt.data, "tradingTxId"))
4962 let tradingTx = transactionById(fromBase58String(tradingTxId))
5063 let priceWin = extract(getInteger(dt.data, "priceWin"))
5164 match tradingTx {
5265 case exchange: ExchangeTransaction =>
5366 if (if ((priceWin == exchange.price))
5467 then (exchange.timestamp >= minTimeToTrading)
5568 else false)
5669 then (maxTimeToTrading >= exchange.timestamp)
5770 else false
5871 case _ =>
5972 false
6073 }
6174 }
6275 else if (isDefined(getString(tx.sender, "tradingTxId")))
6376 then true
6477 else false
6578 case _ =>
6679 true
6780 }

github/deemru/w8io/6500d08 
59.46 ms