tx · EYtzk38Wpt3hchAQhAzmUtXC8ixMDvaWzTWV9W692NJn

3N1fcrWULKWACeWDuo3FpugKcoYC4xQ7uw8:  -0.00600000 Waves

2022.07.07 13:34 [2129154] smart account 3N1fcrWULKWACeWDuo3FpugKcoYC4xQ7uw8 > SELF 0.00000000 Waves

{ "type": 13, "id": "EYtzk38Wpt3hchAQhAzmUtXC8ixMDvaWzTWV9W692NJn", "fee": 600000, "feeAssetId": null, "timestamp": 1657190060578, "version": 2, "chainId": 84, "sender": "3N1fcrWULKWACeWDuo3FpugKcoYC4xQ7uw8", "senderPublicKey": "48K83j8fKJeoBfJYe7BTpnr2VQg7uLGwyCrhmdghH3xZ", "proofs": [ "UQeWa6tAjHmzXac6Ns7rbbXDG9ZXkkGnq5GwAeMXSNCpdhEWz68SnZXPvdc7QM5aDYTXJK5kst2i9w4aPAXW3Cx" ], "script": "base64:BgIRCAISCQoHAQEBCAgICBIAEgABAAlzZXBhcmF0b3ICAl9fAwFpAQllbWl0RXZlbnQHEHNvdXJjZV9jaGFpbl9pZHgQdGFyZ2V0X2NoYWluX2lkeAxibG9ja19oZWlnaHQKYmxvY2tfaGFzaAd0eF9oYXNoDHNvdXJjZV9hc3NldAZhbW91bnQECWFtb3VudEludAQHJG1hdGNoMAkAqAMBBQZhbW91bnQDCQABAgUHJG1hdGNoMAIGQmlnSW50BAFhBQckbWF0Y2gwBQFhAwkAAQIFByRtYXRjaDACBFVuaXQJAAIBAhBpbmNvcnJlY3QgYW1vdW50CQACAQILTWF0Y2ggZXJyb3IEDGV2ZW50TGFzdElkeAQHJG1hdGNoMAkAnwgBAg9FVkVOVFNfTEFTVF9JRFgDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAwkAAQIFByRtYXRjaDACBFVuaXQAAAkAAgECC01hdGNoIGVycm9yBAVldmVudAkAuQkCCQDMCAIJAKQDAQUQc291cmNlX2NoYWluX2lkeAkAzAgCCQCkAwEFEHRhcmdldF9jaGFpbl9pZHgJAMwIAgkApAMBBQxibG9ja19oZWlnaHQJAMwIAgUKYmxvY2tfaGFzaAkAzAgCBQd0eF9oYXNoCQDMCAIFDHNvdXJjZV9hc3NldAkAzAgCCQCmAwEFCWFtb3VudEludAUDbmlsBQlzZXBhcmF0b3IJAJQKAgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgICCEVWRU5UU19fCQCkAwEFDGV2ZW50TGFzdElkeAUFZXZlbnQJAMwIAgkBDEludGVnZXJFbnRyeQICD0VWRU5UU19MQVNUX0lEWAkAZAIFDGV2ZW50TGFzdElkeAABBQNuaWwFBHVuaXQBaQEQZGVwb3NpdEluc3VyYW5jZQAEA2VycgMJAQIhPQIJAJADAQgFAWkIcGF5bWVudHMAAQkAAgECCm5vIHBheW1lbnQDCQAAAggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBQR1bml0CQACAQIUcGF5bWVudCBpcyBub3QgV0FWRVMDCQBnAgAACAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAkAAgECDHplcm8gcGF5bWVudAUEdW5pdAMJAAACBQNlcnIFA2VycgkAlAoCCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgICEElOU1VSQU5DRV9GUkVFX18JANgEAQgIBQFpBmNhbGxlcgVieXRlcwgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpARF3aXRoZHJhd0luc3VyYW5jZQAECWluc3VyYW5jZQQHJG1hdGNoMAkAnwgBCQCsAgICEElOU1VSQU5DRV9GUkVFX18JANgEAQgIBQFpBmNhbGxlcgVieXRlcwMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDADCQBmAgUBYQAABQFhCQACAQIRbm8gZnJlZSBpbnN1cmFuY2UJAAIBAgxubyBpbnN1cmFuY2UJAJQKAgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFCWluc3VyYW5jZQUEdW5pdAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICAhBJTlNVUkFOQ0VfRlJFRV9fCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMAAAUDbmlsBQR1bml0AQJ0eAEGdmVyaWZ5AAkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleW12KvQ=", "height": 2129154, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CieE6am4zjHXpPKsjEKda8gPg5xxdsosP1tP8uEBqxar Next: 7Bm5TJ2TvHP25ZP3A5wePdt3MYN4fztZgYE6braUqVDg Diff:
OldNewDifferences
1-{-# STDLIB_VERSION 5 #-}
1+{-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let separator = "__"
2626 }
2727
2828
29+
30+@Callable(i)
31+func depositInsurance () = {
32+ let err = if ((size(i.payments) != 1))
33+ then throw("no payment")
34+ else if ((i.payments[0].assetId == unit))
35+ then throw("payment is not WAVES")
36+ else if ((0 >= i.payments[0].amount))
37+ then throw("zero payment")
38+ else unit
39+ if ((err == err))
40+ then $Tuple2([IntegerEntry(("INSURANCE_FREE__" + toBase58String(i.caller.bytes)), i.payments[0].amount)], unit)
41+ else throw("Strict value is not equal to itself.")
42+ }
43+
44+
45+
46+@Callable(i)
47+func withdrawInsurance () = {
48+ let insurance = match getInteger(("INSURANCE_FREE__" + toBase58String(i.caller.bytes))) {
49+ case a: Int =>
50+ if ((a > 0))
51+ then a
52+ else throw("no free insurance")
53+ case _ =>
54+ throw("no insurance")
55+ }
56+ $Tuple2([ScriptTransfer(i.caller, insurance, unit), IntegerEntry(("INSURANCE_FREE__" + toBase58String(i.caller.bytes)), 0)], unit)
57+ }
58+
59+
2960 @Verifier(tx)
3061 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
3162
Full:
OldNewDifferences
1-{-# STDLIB_VERSION 5 #-}
1+{-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let separator = "__"
55
66 @Callable(i)
77 func emitEvent (source_chain_idx,target_chain_idx,block_height,block_hash,tx_hash,source_asset,amount) = {
88 let amountInt = match parseBigInt(amount) {
99 case a: BigInt =>
1010 a
1111 case _: Unit =>
1212 throw("incorrect amount")
1313 case _ =>
1414 throw("Match error")
1515 }
1616 let eventLastIdx = match getInteger("EVENTS_LAST_IDX") {
1717 case a: Int =>
1818 a
1919 case _: Unit =>
2020 0
2121 case _ =>
2222 throw("Match error")
2323 }
2424 let event = makeString([toString(source_chain_idx), toString(target_chain_idx), toString(block_height), block_hash, tx_hash, source_asset, toString(amountInt)], separator)
2525 $Tuple2([StringEntry(("EVENTS__" + toString(eventLastIdx)), event), IntegerEntry("EVENTS_LAST_IDX", (eventLastIdx + 1))], unit)
2626 }
2727
2828
29+
30+@Callable(i)
31+func depositInsurance () = {
32+ let err = if ((size(i.payments) != 1))
33+ then throw("no payment")
34+ else if ((i.payments[0].assetId == unit))
35+ then throw("payment is not WAVES")
36+ else if ((0 >= i.payments[0].amount))
37+ then throw("zero payment")
38+ else unit
39+ if ((err == err))
40+ then $Tuple2([IntegerEntry(("INSURANCE_FREE__" + toBase58String(i.caller.bytes)), i.payments[0].amount)], unit)
41+ else throw("Strict value is not equal to itself.")
42+ }
43+
44+
45+
46+@Callable(i)
47+func withdrawInsurance () = {
48+ let insurance = match getInteger(("INSURANCE_FREE__" + toBase58String(i.caller.bytes))) {
49+ case a: Int =>
50+ if ((a > 0))
51+ then a
52+ else throw("no free insurance")
53+ case _ =>
54+ throw("no insurance")
55+ }
56+ $Tuple2([ScriptTransfer(i.caller, insurance, unit), IntegerEntry(("INSURANCE_FREE__" + toBase58String(i.caller.bytes)), 0)], unit)
57+ }
58+
59+
2960 @Verifier(tx)
3061 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
3162

github/deemru/w8io/3ef1775 
29.36 ms