tx · 6DEjRXmCMd8DYiZqmQA4WsQAXF6756XS61FVBcgFXkGB

3MyV9Fm9cwW9W68VCGfPvejLujx7xVpJiKW:  -0.01400000 Waves

2020.01.04 03:24 [838410] smart account 3MyV9Fm9cwW9W68VCGfPvejLujx7xVpJiKW > SELF 0.00000000 Waves

{ "type": 13, "id": "6DEjRXmCMd8DYiZqmQA4WsQAXF6756XS61FVBcgFXkGB", "fee": 1400000, "feeAssetId": null, "timestamp": 1578097515474, "version": 1, "sender": "3MyV9Fm9cwW9W68VCGfPvejLujx7xVpJiKW", "senderPublicKey": "8zVjiVAuhkkAyQsSHHvjkNNoN8WDKJAEBV5nSpiyyYWr", "proofs": [ "36b7zP6CY4V48v6DeGvE89K3Ai2QBYSDz3HzW4KbZiYs9b58ag6M1yZf4wZfCG6nWFeYptTZcoMmma1P9Adocmra" ], "script": "base64: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", "chainId": 84, "height": 838410, "spentComplexity": 0 } View: original | compacted Prev: 6LJxxk9LVmZM637kDQsjgL9UbVmxwWaRtbYW1k4SSotp Next: FFbcuEKBFXTAvS4Y4SdSGiyiNsMW4efqcomnGqJs3UGu Diff:
OldNewDifferences
1111
1212 let euroId = base58'AsuWyM9MUUsMmWkK7jS48L3ky6gA1pxx7QtEYPbfLjAJ'
1313
14-let compeNum = "111111"
15-
1614 @Callable(i)
17-func deposit (compeStart,id) = {
15+func deposit (compeStart,id,compeNum) = {
1816 let pmt = extract(i.payment)
1917 let paymentId = pmt.assetId
2018 let currentKey = toBase58String(i.caller.bytes)
3129
3230
3331 @Callable(i)
34-func withdraw (amount,id) = {
32+func withdraw (amount,id,compeNum) = {
3533 let currentKey = toBase58String(i.caller.bytes)
3634 let compeStart = match getInteger(this, ((((id + "_compeStart_") + compeNum) + "_") + currentKey)) {
3735 case a: Int =>
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let dappAcountPubKey = base58'7DERSZYEoBTSwaTrN1ktwnx1Y5D46mSpMSayUNs8CmcK'
55
66 let par7Id = base58'EtV3CXQ4wqm28WPB1KaBv5B9ke2bpXRZMutYNEJUQcXm'
77
88 let usdnId = base58'3KFXBGGLCjA5Z2DuW4Dq9fDDrHjJJP1ZEkaoajSzuKsC'
99
1010 let btcId = base58'DWgwcZTMhSvnyYCoWLRUXXSH1RSkzThXLJhww9gwkqdn'
1111
1212 let euroId = base58'AsuWyM9MUUsMmWkK7jS48L3ky6gA1pxx7QtEYPbfLjAJ'
1313
14-let compeNum = "111111"
15-
1614 @Callable(i)
17-func deposit (compeStart,id) = {
15+func deposit (compeStart,id,compeNum) = {
1816 let pmt = extract(i.payment)
1917 let paymentId = pmt.assetId
2018 let currentKey = toBase58String(i.caller.bytes)
2119 let currentAmount = match getInteger(this, currentKey) {
2220 case a: Int =>
2321 a
2422 case _ =>
2523 0
2624 }
2725 let newAmount = (currentAmount + pmt.amount)
2826 WriteSet([DataEntry(((((id + "_") + compeNum) + "_") + currentKey), newAmount), DataEntry(((((id + "_compeStart_") + compeNum) + "_") + currentKey), compeStart)])
2927 }
3028
3129
3230
3331 @Callable(i)
34-func withdraw (amount,id) = {
32+func withdraw (amount,id,compeNum) = {
3533 let currentKey = toBase58String(i.caller.bytes)
3634 let compeStart = match getInteger(this, ((((id + "_compeStart_") + compeNum) + "_") + currentKey)) {
3735 case a: Int =>
3836 a
3937 case _ =>
4038 0
4139 }
4240 let currentAmount = match getInteger(this, ((((id + "_") + compeNum) + "_") + currentKey)) {
4341 case a: Int =>
4442 a
4543 case _ =>
4644 0
4745 }
4846 let newAmount = (currentAmount - amount)
4947 if ((lastBlock.timestamp > compeStart))
5048 then throw("Can't withdraw compe start")
5149 else if ((0 > amount))
5250 then throw("Can't withdraw negative amount")
5351 else if ((0 > newAmount))
5452 then throw("Not enough balance")
5553 else if ((id == "EtV3CXQ4wqm28WPB1KaBv5B9ke2bpXRZMutYNEJUQcXm"))
5654 then ScriptResult(WriteSet([DataEntry(((((id + "_") + compeNum) + "_") + currentKey), newAmount)]), TransferSet([ScriptTransfer(i.caller, amount, par7Id)]))
5755 else if ((id == "3KFXBGGLCjA5Z2DuW4Dq9fDDrHjJJP1ZEkaoajSzuKsC"))
5856 then ScriptResult(WriteSet([DataEntry(((((id + "_") + compeNum) + "_") + currentKey), newAmount)]), TransferSet([ScriptTransfer(i.caller, amount, usdnId)]))
5957 else if ((id == "DWgwcZTMhSvnyYCoWLRUXXSH1RSkzThXLJhww9gwkqdn"))
6058 then ScriptResult(WriteSet([DataEntry(((((id + "_") + compeNum) + "_") + currentKey), newAmount)]), TransferSet([ScriptTransfer(i.caller, amount, btcId)]))
6159 else if ((id == "AsuWyM9MUUsMmWkK7jS48L3ky6gA1pxx7QtEYPbfLjAJ"))
6260 then ScriptResult(WriteSet([DataEntry(((((id + "_") + compeNum) + "_") + currentKey), newAmount)]), TransferSet([ScriptTransfer(i.caller, amount, euroId)]))
6361 else if ((id == "WAVES"))
6462 then ScriptResult(WriteSet([DataEntry(((((id + "_") + compeNum) + "_") + currentKey), newAmount)]), TransferSet([ScriptTransfer(i.caller, amount, unit)]))
6563 else throw("Can't withdraw")
6664 }
6765
6866
6967 @Verifier(tx)
7068 func verify () = match tx {
7169 case ttx: TransferTransaction =>
7270 sigVerify(ttx.bodyBytes, ttx.proofs[0], ttx.senderPublicKey)
7371 case stx: SetScriptTransaction =>
7472 sigVerify(stx.bodyBytes, stx.proofs[0], stx.senderPublicKey)
7573 case _ =>
7674 true
7775 }
7876

github/deemru/w8io/169f3d6 
31.01 ms