tx · EHkj9pVrAtVqNTMsEBvJM8ob5LSAF1VjcdaFgpLqoZ2h 3MzgHMybYexKdJKAxYgnPxUX9X51ExrUYaf: -0.03200000 Waves 2022.05.23 19:54 [2064597] smart account 3MzgHMybYexKdJKAxYgnPxUX9X51ExrUYaf > SELF 0.00000000 Waves
{ "type": 13, "id": "EHkj9pVrAtVqNTMsEBvJM8ob5LSAF1VjcdaFgpLqoZ2h", "fee": 3200000, "feeAssetId": null, "timestamp": 1653324918724, "version": 2, "chainId": 84, "sender": "3MzgHMybYexKdJKAxYgnPxUX9X51ExrUYaf", "senderPublicKey": "B63jSUR3s1MvRQ8dPLcqEXyS7iv4ZmzGaoiWP6rHviqz", "proofs": [ "613mmaTDdmXDVQ2sWNA1d4Wr6wTsMF7VYqbcYWU4Sv3bnj6PeG9H2FZe3TVhaAbbhmJj7eLcwz1bQaVppHuM5qgL" ], "script": "base64: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", "height": 2064597, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let a = "k_insurance" | |
5 | + | ||
6 | + | let b = "k_whitelist" | |
7 | + | ||
8 | + | let c = Address(base58'3My3DAyGv3d3vkSGRVKpY3AbrnZjgRijMCJ') | |
9 | + | ||
10 | + | let d = base58'F3EchjoUmhrwXapx5en4isAYVMHECvwSqyMPkSSUcskX' | |
11 | + | ||
12 | + | let e = base58'HezsdQuRDtzksAYUy97gfhKy7Z1NW2uXYSHA3bgqenNZ' | |
13 | + | ||
14 | + | let f = Address(base58'3N9LkJahTMx41wGhSxLS42prCZtRCp4dhTs') | |
15 | + | ||
16 | + | func g (h,i) = ((h + "_") + i) | |
17 | + | ||
18 | + | ||
19 | + | func j () = valueOrElse(getInteger(this, a), 0) | |
20 | + | ||
21 | + | ||
22 | + | func k (i) = valueOrElse(getBoolean(this, g(b, i)), false) | |
23 | + | ||
24 | + | ||
25 | + | func l (m) = [IntegerEntry(a, m)] | |
26 | + | ||
27 | + | ||
28 | + | @Callable(m) | |
29 | + | func addWhitelist (n) = if ((m.caller != c)) | |
30 | + | then throw("Invalid addWhitelist params") | |
31 | + | else [BooleanEntry(g(b, n), true)] | |
32 | + | ||
33 | + | ||
34 | + | ||
35 | + | @Callable(m) | |
36 | + | func removeWhitelist (n) = if ((m.caller != c)) | |
37 | + | then throw("Invalid addWhitelist params") | |
38 | + | else [BooleanEntry(g(b, n), false)] | |
39 | + | ||
40 | + | ||
41 | + | ||
42 | + | @Callable(m) | |
43 | + | func withdraw (o) = if (if (!(k(toString(m.caller)))) | |
44 | + | then true | |
45 | + | else (o > j())) | |
46 | + | then throw("Invalid withdraw params") | |
47 | + | else { | |
48 | + | let p = invoke(f, "unlockNeutrino", [o, toBase58String(e)], nil) | |
49 | + | if ((p == p)) | |
50 | + | then (l((j() - o)) ++ [ScriptTransfer(m.caller, o, e)]) | |
51 | + | else throw("Strict value is not equal to itself.") | |
52 | + | } | |
53 | + | ||
54 | + | ||
55 | + | ||
56 | + | @Callable(m) | |
57 | + | func deposit () = { | |
58 | + | let o = m.payments[0].amount | |
59 | + | if (if ((m.payments[0].assetId != e)) | |
60 | + | then true | |
61 | + | else if (!(k(toString(m.caller)))) | |
62 | + | then (m.caller != c) | |
63 | + | else false) | |
64 | + | then throw("Invalid deposit params") | |
65 | + | else { | |
66 | + | let q = invoke(f, "lockNeutrino", nil, [AttachedPayment(e, o)]) | |
67 | + | if ((q == q)) | |
68 | + | then l((j() + o)) | |
69 | + | else throw("Strict value is not equal to itself.") | |
70 | + | } | |
71 | + | } | |
72 | + | ||
73 | + | ||
74 | + | @Verifier(r) | |
75 | + | func s () = sigVerify(r.bodyBytes, r.proofs[0], d) | |
76 | + |
github/deemru/w8io/169f3d6 16.31 ms ◑