tx · EUKa7WLdMjAFjMRBGRATQboLPtBhWrh64SznUfAFfbRZ

3N74iaAtetEMXJTsAv3kz88rQtZy7aa3i9n:  -0.01000000 Waves

2020.04.13 14:17 [952546] smart account 3N74iaAtetEMXJTsAv3kz88rQtZy7aa3i9n > SELF 0.00000000 Waves

{ "type": 13, "id": "EUKa7WLdMjAFjMRBGRATQboLPtBhWrh64SznUfAFfbRZ", "fee": 1000000, "feeAssetId": null, "timestamp": 1586776548543, "version": 1, "sender": "3N74iaAtetEMXJTsAv3kz88rQtZy7aa3i9n", "senderPublicKey": "3eVoyjreDXXXPDaJSoqeLV33HeskiUTfQ5DyuQJNGbVz", "proofs": [ "5bAnrrzmXRjckkp5WRMJBLt22Pn5LuDHyusSRkhzAzyNmmqHvdjaw6LdqpffKqw9iAcZCKDZFwiU8BsKb1JF8MMU" ], "script": "base64:AAIDAAAAAAAAAAoIARIAEgQKAgEIAAAAAwEAAAAKZ2V0QmFsYW5jZQAAAAIAAAAHYWRkcmVzcwAAAAdhc3NldElkBAAAAAFiCQAEGgAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACBQAAAAdhZGRyZXNzAgAAAAFfBQAAAAdhc3NldElkBAAAAAckbWF0Y2gwBQAAAAFiAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAXQFAAAAByRtYXRjaDAFAAAAAXQAAAAAAAAAAAABAAAACmdldEFzc2V0SWQAAAABAAAAB2Fzc2V0SWQEAAAAByRtYXRjaDAFAAAAB2Fzc2V0SWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACkJ5dGVWZWN0b3IEAAAAAWIFAAAAByRtYXRjaDAJAAJYAAAAAQUAAAABYgIAAAAFV0FWRVMBAAAADmFzc2V0SWRUb0J5dGVzAAAAAQAAAAdhc3NldElkAwMJAAAAAAAAAgUAAAAHYXNzZXRJZAIAAAAFV0FWRVMGCQAAAAAAAAIFAAAAB2Fzc2V0SWQCAAAAAAUAAAAEdW5pdAkAAlkAAAABBQAAAAdhc3NldElkAAAAAgAAAAFpAQAAAAdkZXBvc2l0AAAAAAQAAAAHYWRkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAAAdwYXltZW50CQEAAAAHZXh0cmFjdAAAAAEIBQAAAAFpAAAAB3BheW1lbnQEAAAAB2Fzc2V0SWQJAQAAAApnZXRBc3NldElkAAAAAQgFAAAAB3BheW1lbnQAAAAHYXNzZXRJZAQAAAADYmFsCQEAAAAKZ2V0QmFsYW5jZQAAAAIFAAAAB2FkZHJlc3MFAAAAB2Fzc2V0SWQJAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAHYWRkcmVzcwIAAAABXwUAAAAHYXNzZXRJZAkAAGQAAAACBQAAAANiYWwIBQAAAAdwYXltZW50AAAABmFtb3VudAUAAAADbmlsCQEAAAALVHJhbnNmZXJTZXQAAAABBQAAAANuaWwAAAABaQEAAAAId2l0aGRyYXcAAAACAAAABmFtb3VudAAAAAdhc3NldElkBAAAAAdhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAA2JhbAkBAAAACmdldEJhbGFuY2UAAAACBQAAAAdhZGRyZXNzBQAAAAdhc3NldElkAwkAAGcAAAACBQAAAANiYWwFAAAABmFtb3VudAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAdhZGRyZXNzAgAAAAFfBQAAAAdhc3NldElkCQAAZQAAAAIFAAAAA2JhbAUAAAAGYW1vdW50BQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAZhbW91bnQJAQAAAA5hc3NldElkVG9CeXRlcwAAAAEFAAAAB2Fzc2V0SWQFAAAAA25pbAkAAAIAAAABCQABLAAAAAICAAAAEFlvdXIgYmFsYW5jZSBpcyAJAAGkAAAAAQUAAAADYmFsAAAAAD4Dc2k=", "chainId": 84, "height": 952546, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func getBalance (address,assetId) = {
5+ let b = getInteger(this, ((address + "_") + assetId))
6+ match b {
7+ case t: Int =>
8+ t
9+ case _ =>
10+ 0
11+ }
12+ }
13+
14+
15+func getAssetId (assetId) = match assetId {
16+ case b: ByteVector =>
17+ toBase58String(b)
18+ case _ =>
19+ "WAVES"
20+}
21+
22+
23+func assetIdToBytes (assetId) = if (if ((assetId == "WAVES"))
24+ then true
25+ else (assetId == ""))
26+ then unit
27+ else fromBase58String(assetId)
28+
29+
30+@Callable(i)
31+func deposit () = {
32+ let address = toBase58String(i.caller.bytes)
33+ let payment = extract(i.payment)
34+ let assetId = getAssetId(payment.assetId)
35+ let bal = getBalance(address, assetId)
36+ ScriptResult(WriteSet([DataEntry(((address + "_") + assetId), (bal + payment.amount))]), TransferSet(nil))
37+ }
38+
39+
40+
41+@Callable(i)
42+func withdraw (amount,assetId) = {
43+ let address = toBase58String(i.caller.bytes)
44+ let bal = getBalance(address, assetId)
45+ if ((bal >= amount))
46+ then ScriptResult(WriteSet([DataEntry(((address + "_") + assetId), (bal - amount))]), TransferSet([ScriptTransfer(i.caller, amount, assetIdToBytes(assetId))]))
47+ else throw(("Your balance is " + toString(bal)))
48+ }
49+
50+

github/deemru/w8io/c3f4982 
28.94 ms