tx · EgZwzervRPnptApDxHdxPVDtYEL29KDhzVzZAFXuxPdQ

3N4TEQzMSjr8dNSXeexyKmteC6coHneTydX:  -0.05000000 Waves

2021.06.11 13:41 [1565583] smart account 3N4TEQzMSjr8dNSXeexyKmteC6coHneTydX > SELF 0.00000000 Waves

{ "type": 13, "id": "EgZwzervRPnptApDxHdxPVDtYEL29KDhzVzZAFXuxPdQ", "fee": 5000000, "feeAssetId": null, "timestamp": 1623408047280, "version": 2, "chainId": 84, "sender": "3N4TEQzMSjr8dNSXeexyKmteC6coHneTydX", "senderPublicKey": "BLYPM7pr6zCdxj9zzANneoGVcDEwBnQApCEnR3BkNm68", "proofs": [ "24wYE5BeCffeXTDeJ9PD7xbEj3EzbX8GSuqyXKN8kimYgmeTZyDWaMTH38nBecr5FQZmEQ6z6CVcViwkRueWgMKM" ], "script": "base64:AAIFAAAAAAAAAAkIAhIAEgMKAQEAAAAAAAAAAgAAAAFpAQAAAAdkZXBvc2l0AAAAAAQAAAADcG10AwkAAAAAAAACCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAACQAAAgAAAAECAAAAHEF0dGFjaGVkIHBheW1lbnQgaXMgcmVxdWlyZWQDCQEAAAAJaXNEZWZpbmVkAAAAAQgFAAAAA3BtdAAAAAdhc3NldElkCQAAAgAAAAECAAAAFXdvcmtzIHdpdGggd2F2ZXMgb25seQQAAAAKY3VycmVudEtleQkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAA1jdXJyZW50QW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAACmN1cnJlbnRLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAJbmV3QW1vdW50CQAAZAAAAAIFAAAADWN1cnJlbnRBbW91bnQIBQAAAANwbXQAAAAGYW1vdW50CQAFFAAAAAIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAACmN1cnJlbnRLZXkFAAAACW5ld0Ftb3VudAUAAAADbmlsBQAAAAR1bml0AAAAAWkBAAAACHdpdGhkcmF3AAAAAQAAAAZhbW91bnQEAAAACmN1cnJlbnRLZXkJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAANY3VycmVudEFtb3VudAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAApjdXJyZW50S2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAACW5ld0Ftb3VudAkAAGUAAAACBQAAAA1jdXJyZW50QW1vdW50BQAAAAZhbW91bnQDCQAAZgAAAAIAAAAAAAAAAAAFAAAABmFtb3VudAkAAAIAAAABAgAAAB5DYW4ndCB3aXRoZHJhdyBuZWdhdGl2ZSBhbW91bnQDCQAAZgAAAAIAAAAAAAAAAAAFAAAACW5ld0Ftb3VudAkAAAIAAAABAgAAABJOb3QgZW5vdWdoIGJhbGFuY2UJAAUUAAAAAgkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAKY3VycmVudEtleQUAAAAJbmV3QW1vdW50CQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAGYW1vdW50BQAAAAR1bml0BQAAAANuaWwFAAAABHVuaXQAAAAAYiVoQg==", "height": 1565583, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 83PCAKtcuBfDmNfHBs4BPV8CgmGKVbELKkm9RyrFjkFv Next: EpWK9gSKBCjMfADnL4EAqYSFxevRw9RpghkHoa53Uw7p Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-func lazyIsGood () = {
5- let c = {
6- let d = 1
7- true
8- }
9- c
10- }
114
125
136 @Callable(i)
14-func giveAway (age) = {
15- let dapp2 = Address(base58'asdfasfasfd')
16- let args = nil
17- let balanceBefore = wavesBalance(this).regular
18- if ((balanceBefore == balanceBefore))
19- then {
20- let z = invoke(dapp2, "bar", args, [AttachedPayment(unit, 100000000)])
21- if ((z == z))
22- then {
23- let balanceAfter = wavesBalance(this).regular
24- if ((balanceAfter == balanceAfter))
25- then $Tuple2([ScriptTransfer(i.caller, age, unit), IntegerEntry(toBase58String(i.caller.bytes), age)], unit)
26- else throw("Strict value is not equal to itself.")
27- }
28- else throw("Strict value is not equal to itself.")
7+func deposit () = {
8+ let pmt = if ((size(i.payments) == 1))
9+ then i.payments[0]
10+ else throw("Attached payment is required")
11+ if (isDefined(pmt.assetId))
12+ then throw("works with waves only")
13+ else {
14+ let currentKey = toBase58String(i.caller.bytes)
15+ let currentAmount = match getInteger(this, currentKey) {
16+ case a: Int =>
17+ a
18+ case _ =>
19+ 0
2920 }
30- else throw("Strict value is not equal to itself.")
21+ let newAmount = (currentAmount + pmt.amount)
22+ $Tuple2([IntegerEntry(currentKey, newAmount)], unit)
23+ }
3124 }
3225
3326
3427
3528 @Callable(i)
36-func faucet () = {
37- let isKnownCaller = match getBoolean(this, toBase58String(i.caller.bytes)) {
38- case hist: Boolean =>
39- hist
29+func withdraw (amount) = {
30+ let currentKey = toBase58String(i.caller.bytes)
31+ let currentAmount = match getInteger(this, currentKey) {
32+ case a: Int =>
33+ a
4034 case _ =>
41- false
35+ 0
4236 }
43- if (!(isKnownCaller))
44- then $Tuple2([BooleanEntry(toBase58String(i.caller.bytes), true), ScriptTransfer(i.caller, 100000000, unit)], unit)
45- else throw("Can be used only once")
37+ let newAmount = (currentAmount - amount)
38+ if ((0 > amount))
39+ then throw("Can't withdraw negative amount")
40+ else if ((0 > newAmount))
41+ then throw("Not enough balance")
42+ else $Tuple2([IntegerEntry(currentKey, newAmount), ScriptTransfer(i.caller, amount, unit)], unit)
4643 }
4744
48-
49-@Verifier(tx)
50-func verifier () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
5145

github/deemru/w8io/169f3d6 
32.41 ms