tx · DjjB63KBwwjyNei8C8AUzn4VjNJuN6TR5rx9aPAGQJs9 3N4JcxmF8htX88u6FyzHaL5Hv8pd9vY87St: -0.01000000 Waves 2020.09.22 10:34 [1188226] smart account 3N4JcxmF8htX88u6FyzHaL5Hv8pd9vY87St > SELF 0.00000000 Waves
{ "type": 13, "id": "DjjB63KBwwjyNei8C8AUzn4VjNJuN6TR5rx9aPAGQJs9", "fee": 1000000, "feeAssetId": null, "timestamp": 1600760158850, "version": 2, "chainId": 84, "sender": "3N4JcxmF8htX88u6FyzHaL5Hv8pd9vY87St", "senderPublicKey": "536wG8HnWgXVUHmeVeFqv4agH1yn6bg2uyaPB61GEFuj", "proofs": [ "sU7zK5Mojh3H1JQQjeLpzFsCzrUuCE1YGRepRH23kCihmWKFt8HkGfNBbP6D3suHoTMt9AtYYavkT1tXg6G5S5g" ], "script": "base64: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", "height": 1188226, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 4 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let a = base58'GgA8mL3SEYvuhYoZFd418Li4bqXAasGbYCKJshTt2MGU' | |
5 | + | ||
6 | + | let b = base58'EtV3CXQ4wqm28WPB1KaBv5B9ke2bpXRZMutYNEJUQcXm' | |
7 | + | ||
8 | + | let c = base58'CCA3xSCed22LYv22gZ646XjKQikbGYRe49StqbrSkNEK' | |
9 | + | ||
10 | + | let d = base58'3KFXBGGLCjA5Z2DuW4Dq9fDDrHjJJP1ZEkaoajSzuKsC' | |
11 | + | ||
12 | + | let e = base58'BCqo4hvDBB2dzmidJQKkVtQtkgEQVVwMy1jjV4R4tNB4' | |
13 | + | ||
14 | + | let f = base58'FU4wEpLzTjfekkKGGSaXKgBmP1LNJu6ewSw82z6AjoXH' | |
15 | + | ||
16 | + | let g = 0 | |
17 | + | ||
18 | + | let h = 1 | |
19 | + | ||
20 | + | let i = 2 | |
21 | + | ||
22 | + | @Callable(j) | |
23 | + | func buyTicket (k) = { | |
24 | + | let l = j.payments[0] | |
25 | + | let m = (l.amount / k) | |
26 | + | if ((l.assetId != b)) | |
27 | + | then throw("works with PAR7 only") | |
28 | + | else { | |
29 | + | let n = toBase58String(j.caller.bytes) | |
30 | + | let o = { | |
31 | + | let p = getInteger(this, n) | |
32 | + | if ($isInstanceOf(p, "Int")) | |
33 | + | then { | |
34 | + | let q = p | |
35 | + | q | |
36 | + | } | |
37 | + | else 0 | |
38 | + | } | |
39 | + | let r = (o + m) | |
40 | + | [IntegerEntry(("buy_" + n), r), ScriptTransfer(j.caller, m, a)] | |
41 | + | } | |
42 | + | } | |
43 | + | ||
44 | + | ||
45 | + | ||
46 | + | @Callable(j) | |
47 | + | func lessonSubscription (s) = { | |
48 | + | let l = j.payments[0] | |
49 | + | let t = l.assetId | |
50 | + | let u = toBase58String(j.caller.bytes) | |
51 | + | let v = ((s + "_") + u) | |
52 | + | let w = ((("fee_" + s) + "_") + u) | |
53 | + | let x = toBase58String(value(t)) | |
54 | + | let y = ((x + "_") + u) | |
55 | + | let z = { | |
56 | + | let p = getInteger(this, y) | |
57 | + | if ($isInstanceOf(p, "Int")) | |
58 | + | then { | |
59 | + | let q = p | |
60 | + | q | |
61 | + | } | |
62 | + | else 0 | |
63 | + | } | |
64 | + | let A = (z + l.amount) | |
65 | + | [IntegerEntry(v, g), IntegerEntry(w, l.amount), IntegerEntry(y, A)] | |
66 | + | } | |
67 | + | ||
68 | + | ||
69 | + | ||
70 | + | @Callable(j) | |
71 | + | func lessonStart (s,u) = { | |
72 | + | let v = ((s + "_") + u) | |
73 | + | [IntegerEntry(v, h)] | |
74 | + | } | |
75 | + | ||
76 | + | ||
77 | + | ||
78 | + | @Callable(j) | |
79 | + | func lessonFinish (s,u) = { | |
80 | + | let x = toBase58String(value(a)) | |
81 | + | let w = ((("fee_" + s) + "_") + u) | |
82 | + | let B = { | |
83 | + | let p = getInteger(this, w) | |
84 | + | if ($isInstanceOf(p, "Int")) | |
85 | + | then { | |
86 | + | let q = p | |
87 | + | q | |
88 | + | } | |
89 | + | else 0 | |
90 | + | } | |
91 | + | let C = toBase58String(j.caller.bytes) | |
92 | + | let D = { | |
93 | + | let p = getInteger(this, C) | |
94 | + | if ($isInstanceOf(p, "Int")) | |
95 | + | then { | |
96 | + | let q = p | |
97 | + | q | |
98 | + | } | |
99 | + | else 0 | |
100 | + | } | |
101 | + | let E = (D + B) | |
102 | + | let v = ((s + "_") + u) | |
103 | + | let y = ((x + "_") + u) | |
104 | + | let z = { | |
105 | + | let p = getInteger(this, y) | |
106 | + | if ($isInstanceOf(p, "Int")) | |
107 | + | then { | |
108 | + | let q = p | |
109 | + | q | |
110 | + | } | |
111 | + | else 0 | |
112 | + | } | |
113 | + | let F = fromBase58String(x) | |
114 | + | [IntegerEntry(C, E), IntegerEntry(v, i), Burn(a, B)] | |
115 | + | } | |
116 | + | ||
117 | + | ||
118 | + | ||
119 | + | @Callable(j) | |
120 | + | func ownerWithdraw () = { | |
121 | + | let C = toBase58String(j.caller.bytes) | |
122 | + | let G = { | |
123 | + | let p = getInteger(this, C) | |
124 | + | if ($isInstanceOf(p, "Int")) | |
125 | + | then { | |
126 | + | let q = p | |
127 | + | q | |
128 | + | } | |
129 | + | else 0 | |
130 | + | } | |
131 | + | if ((0 > G)) | |
132 | + | then throw("Can't withdraw negative amount") | |
133 | + | else [IntegerEntry(C, 0), ScriptTransfer(j.caller, G, b)] | |
134 | + | } | |
135 | + | ||
136 | + | ||
137 | + | @Verifier(H) | |
138 | + | func I () = sigVerify(H.bodyBytes, H.proofs[0], f) | |
139 | + |
github/deemru/w8io/03bedc9 30.42 ms ◑