tx · C7J2NhnVzEvfRk1PxL8yvtR6bGppoTWq2hBHuAPnp4MJ

3N5FdcG1Eyn6Nu8q8J2X81xr5S2XWmZf8hW:  -0.40000000 Waves

2019.07.30 16:21 [608886] smart account 3N5FdcG1Eyn6Nu8q8J2X81xr5S2XWmZf8hW > SELF 0.00000000 Waves

{ "type": 13, "id": "C7J2NhnVzEvfRk1PxL8yvtR6bGppoTWq2hBHuAPnp4MJ", "fee": 40000000, "feeAssetId": null, "timestamp": 1564492899703, "version": 1, "sender": "3N5FdcG1Eyn6Nu8q8J2X81xr5S2XWmZf8hW", "senderPublicKey": "FCeFqu93ZrgVi5rzk6rmR7RqmXW63DDSFMPfpKdKH96N", "proofs": [ "35xr6PuGXf2KKE9KY6Ea1pqNkspxkaTfSnD1AYsr91vgx9xEhdGezvS7RH5DWzStFPR7eE57ZPy8uwWongfkf7xM" ], "script": "base64:AAIDAAAAAAAAAAAAAAABAAAAAAR3RVVSAQAAABoBVKg8XP1PR4nM8qMxkoeO3293q204oOyj2QAAAAIAAAABaQEAAAAHZGVwb3NpdAAAAAAEAAAAA3BtdAkBAAAAB2V4dHJhY3QAAAABCAUAAAABaQAAAAdwYXltZW50AwkBAAAAAiE9AAAAAggFAAAAA3BtdAAAAAdhc3NldElkBQAAAAR3RVVSCQAAAgAAAAECAAAAKndFVVIgLSAzTjVGZGNHMUV5bjZOdThxOEoyWDgxeHI1UzJYV21aZjhoVwQAAAAKY3VycmVudEtleQkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAA1jdXJyZW50QW1vdW50BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAACmN1cnJlbnRLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAJbmV3QW1vdW50CQAAZAAAAAIFAAAADWN1cnJlbnRBbW91bnQIBQAAAANwbXQAAAAGYW1vdW50CQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAApjdXJyZW50S2V5BQAAAAluZXdBbW91bnQFAAAAA25pbAAAAAFpAQAAAAh3aXRoZHJhdwAAAAEAAAAGYW1vdW50BAAAAApjdXJyZW50S2V5CQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWN1cnJlbnRBbW91bnQEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAAKY3VycmVudEtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAluZXdBbW91bnQJAABlAAAAAgUAAAANY3VycmVudEFtb3VudAUAAAAGYW1vdW50AwkAAGYAAAACAAAAAAAAAAAABQAAAAZhbW91bnQJAAACAAAAAQIAAAAfY2FuJ3Qgd2l0aGRyYXcgbmVnYXZ0aXZlIGFtb3VudAMJAABmAAAAAgAAAAAAAAAAAAUAAAAJbmV3QW1vdW50CQAAAgAAAAECAAAAEk5vdCBlbm91Z2ggYmFsYW5jZQkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAACmN1cnJlbnRLZXkFAAAACW5ld0Ftb3VudAUAAAADbmlsCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAGYW1vdW50BQAAAAR3RVVSBQAAAANuaWwAAAAAFlG8+A==", "chainId": 84, "height": 608886, "spentComplexity": 0 } View: original | compacted Prev: 9ZwrSLDuekJreNVFwa7TF7GQasp6jY6Qg63p7WMcRSFP Next: GijnbioXEmWPPcuRUhYSse6KAZpSp8JidXFy5bLytQVq Diff:
OldNewDifferences
2222 }
2323
2424
25+
26+@Callable(i)
27+func withdraw (amount) = {
28+ let currentKey = toBase58String(i.caller.bytes)
29+ let currentAmount = match getInteger(this, currentKey) {
30+ case a: Int =>
31+ a
32+ case _ =>
33+ 0
34+ }
35+ let newAmount = (currentAmount - amount)
36+ if ((0 > amount))
37+ then throw("can't withdraw negavtive amount")
38+ else if ((0 > newAmount))
39+ then throw("Not enough balance")
40+ else ScriptResult(WriteSet([DataEntry(currentKey, newAmount)]), TransferSet([ScriptTransfer(i.caller, amount, wEUR)]))
41+ }
42+
43+
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let wEUR = base58'3N5FdcG1Eyn6Nu8q8J2X81xr5S2XWmZf8hW'
55
66 @Callable(i)
77 func deposit () = {
88 let pmt = extract(i.payment)
99 if ((pmt.assetId != wEUR))
1010 then throw("wEUR - 3N5FdcG1Eyn6Nu8q8J2X81xr5S2XWmZf8hW")
1111 else {
1212 let currentKey = toBase58String(i.caller.bytes)
1313 let currentAmount = match getInteger(this, currentKey) {
1414 case a: Int =>
1515 a
1616 case _ =>
1717 0
1818 }
1919 let newAmount = (currentAmount + pmt.amount)
2020 WriteSet([DataEntry(currentKey, newAmount)])
2121 }
2222 }
2323
2424
25+
26+@Callable(i)
27+func withdraw (amount) = {
28+ let currentKey = toBase58String(i.caller.bytes)
29+ let currentAmount = match getInteger(this, currentKey) {
30+ case a: Int =>
31+ a
32+ case _ =>
33+ 0
34+ }
35+ let newAmount = (currentAmount - amount)
36+ if ((0 > amount))
37+ then throw("can't withdraw negavtive amount")
38+ else if ((0 > newAmount))
39+ then throw("Not enough balance")
40+ else ScriptResult(WriteSet([DataEntry(currentKey, newAmount)]), TransferSet([ScriptTransfer(i.caller, amount, wEUR)]))
41+ }
42+
43+

github/deemru/w8io/169f3d6 
33.53 ms