tx · GynaDwFtznPBH3sNGNqLgtbaBeBekz5nYV2yW5QMLnWD 3N61Cvq5XcnPk9rxpy2Rnp3bSr4syNGUJph: -0.01400000 Waves 2021.11.05 17:23 [1777801] smart account 3N61Cvq5XcnPk9rxpy2Rnp3bSr4syNGUJph > SELF 0.00000000 Waves
{ "type": 13, "id": "GynaDwFtznPBH3sNGNqLgtbaBeBekz5nYV2yW5QMLnWD", "fee": 1400000, "feeAssetId": null, "timestamp": 1636122291619, "version": 2, "chainId": 84, "sender": "3N61Cvq5XcnPk9rxpy2Rnp3bSr4syNGUJph", "senderPublicKey": "G7cNXePvAHUHmZfXa1eHnvFeH6DuykPC5wm9v9djTKgD", "proofs": [ "y3FYeT3NoMuPhYnC3bQeVCM3yiNuuNXqGFRSndz2gUnBHGq122emGCevxn8kNqB87nZsSLTRQgxNyoYnvA2jwua" ], "script": "base64:AAIFAAAAAAAAABkIAhIAEgYKBBgYGBESABIDCgEIEgQKAggBAAAAAwAAAAAKZGVwb3NpdEZlZQAAAAAAAAAD6AAAAAANY29udHJvbGxlckZlZQAAAAAAAAAnEAAAAAALcGxhdGZvcm1GZWUAAAAAAAAAJxAAAAAFAAAAAmE4AQAAAARpbml0AAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAxM1BQSDd4N2lxb2JXNXppeWlSQ2ljMTlyUXFLcjZuUFlhSzFfYXNzZXRfYmFsYW5jZQAAAAAAAG3UrQUAAAADbmlsAAAAAWkBAAAACGFkZFBvb2xzAAAABAAAAAVwb29scwAAAA9saXF1aWRpdHlUb2tlbnMAAAANc2VydmljZVRva2VucwAAABZsaXF1aWRpdHlUb2tlbkRlY2ltYWxzCgEAAAAQZ2VuZXJhdGVQb29sS2V5cwAAAAIAAAALYWNjdW11bGF0ZWQAAAAEcG9vbAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACBQAAAARwb29sAgAAAA5fYXNzZXRfYmFsYW5jZQAAAAAAAAAAAAUAAAALYWNjdW11bGF0ZWQKAQAAAB5nZW5lcmF0ZVBvb2xMaXF1aWRpdHlUb2tlbktleXMAAAACAAAAC2FjY3VtdWxhdGVkAAAABHBvb2wEAAAACXBvb2xJbmRleAkBAAAABXZhbHVlAAAAAQkABE8AAAACBQAAAAVwb29scwUAAAAEcG9vbAQAAAAObGlxdWlkaXR5VG9rZW4JAAGRAAAAAgUAAAAPbGlxdWlkaXR5VG9rZW5zBQAAAAlwb29sSW5kZXgJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACBQAAAARwb29sAgAAABBfbGlxdWlkaXR5X3Rva2VuBQAAAA5saXF1aWRpdHlUb2tlbgUAAAALYWNjdW11bGF0ZWQKAQAAABxnZW5lcmF0ZVBvb2xTZXJ2aWNlVG9rZW5LZXlzAAAAAgAAAAthY2N1bXVsYXRlZAAAAARwb29sBAAAAAlwb29sSW5kZXgJAQAAAAV2YWx1ZQAAAAEJAARPAAAAAgUAAAAFcG9vbHMFAAAABHBvb2wEAAAADmxpcXVpZGl0eVRva2VuCQABkQAAAAIF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AABlAAAAAgUAAAAGYW1vdW50CQEAAAAIZnJhY3Rpb24AAAAEBQAAAAZhbW91bnQAAAAAAAAAAAEFAAAACmRlcG9zaXRGZWUFAAAABkhBTEZVUAkBAAAACGZyYWN0aW9uAAAABAUAAAAGYW1vdW50AAAAAAAAAAABBQAAAA1jb250cm9sbGVyRmVlBQAAAAZIQUxGVVAEAAAAEW5ld1VzZXJQb29sQW1vdW50CQAAZAAAAAIFAAAACnVzZXJBbW91bnQFAAAAFHVzZXJBbW91bnRXaXRob3V0RmVlCQAETAAAAAIJAQAAAAdSZWlzc3VlAAAAAwkAAlkAAAABBQAAABBkQXBwQXNzZXRBZGRyZXNzBQAAABR1c2VyQW1vdW50V2l0aG91dEZlZQYJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAABR1c2VyQW1vdW50V2l0aG91dEZlZQkAAlkAAAABBQAAABBkQXBwQXNzZXRBZGRyZXNzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA1wb29sQW1vdW50S2V5BQAAAA1uZXdQb29sQW1vdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABF1c2VyUG9vbEFtb3VudEtleQUAAAARbmV3VXNlclBvb2xBbW91bnQFAAAAA25pbAAAAAFpAQAAAAh3aXRoZHJhdwAAAAIAAAAEcG9vbAAAAAp1c2VyRWFybmVkBAAAAAZhbW91bnQICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAQAAAAHYXNzZXRJZAgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAHYXNzZXRJZAQAAAANcG9vbEFtb3VudEtleQkAASwAAAACBQAAAARwb29sAgAAAA5fYXNzZXRfYmFsYW5jZQQAAAALdXNlckFkZHJlc3MJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBAAAABF1c2VyUG9vbEFtb3VudEtleQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAEcG9vbAIAAAABXwUAAAALdXNlckFkZHJlc3MCAAAADl9hc3NldF9iYWxhbmNlBAAAABF1c2VyUG9vbEVhcm5lZEtleQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAEcG9vbAIAAAABXwUAAAALdXNlckFkZHJlc3MCAAAAB19lYXJuZWQEAAAACnBvb2xBbW91bnQJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMFAAAADXBvb2xBbW91bnRLZXkEAAAACnVzZXJBbW91bnQEAAAAByRtYXRjaDAJAAQfAAAAAQUAAAARdXNlclBvb2xBbW91bnRLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAADaW50BQAAAAckbWF0Y2gwBQAAAANpbnQEAAAAB25vdGhpbmcFAAAAByRtYXRjaDAAAAAAAAAAAAAEAAAAEHVzZXJFYXJuZWRCZWZvcmUEAAAAByRtYXRjaDAJAAQfAAAAAQUAAAARdXNlclBvb2xFYXJuZWRLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAADaW50BQAAAAckbWF0Y2gwBQAAAANpbnQEAAAAB25vdGhpbmcFAAAAByRtYXRjaDAAAAAAAAAAAAAEAAAAFWxpcXVpZHV0eUFzc2V0QWRkcmVzcwkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAARwb29sAgAAABBfbGlxdWlkaXR5X3Rva2VuBAAAABVsaXF1aWRpdHlUb2tlbkRlY2ltYWwEAAAAByRtYXRjaDAJAAPsAAAAAQkAAlkAAAABBQAAABVsaXF1aWR1dHlBc3NldEFkZHJlc3MDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABUFzc2V0BAAAAAVhc3NldAUAAAAHJG1hdGNoMAgFAAAABWFzc2V0AAAACGRlY2ltYWxzCQAAAgAAAAECAAAAEENhbid0IGZpbmQgYXNzZXQEAAAAEGRBcHBBc3NldEFkZHJlc3MJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAEcG9vbAIAAAAOX3NlcnZpY2VfdG9rZW4EAAAAD3VzZXJFYXJuZWRUb3RhbAkAAGQAAAACBQAAAAp1c2VyRWFybmVkBQAAABB1c2VyRWFybmVkQmVmb3JlBAAAABBhbW91bnRXaXRob3V0RmVlCQAAZQAAAAIJAABlAAAAAgUAAAAGYW1vdW50CQEAAAAIZnJhY3Rpb24AAAAEBQAAAAZhbW91bnQAAAAAAAAAAAEFAAAAC3BsYXRmb3JtRmVlBQAAAAZIQUxGVVAJAQAAAAhmcmFjdGlvbgAAAAQFAAAABmFtb3VudAAAAAAAAAAAAQUAAAANY29udHJvbGxlckZlZQUAAAAGSEFMRlVQBAAAAA1uZXdQb29sQW1vdW50CQAAZQAAAAIFAAAACnBvb2xBbW91bnQFAAAAEGFtb3VudFdpdGhvdXRGZWUDCQAAZwAAAAIFAAAACnVzZXJBbW91bnQFAAAABmFtb3VudAQAAAARbmV3VXNlclBvb2xBbW91bnQJAABlAAAAAgUAAAAKdXNlckFtb3VudAUAAAAQYW1vdW50V2l0aG91dEZlZQkABEwAAAACCQEAAAAEQnVybgAAAAIJAAJZAAAAAQUAAAAQZEFwcEFzc2V0QWRkcmVzcwUAAAAQYW1vdW50V2l0aG91dEZlZQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAAEGFtb3VudFdpdGhvdXRGZWUJAAJZAAAAAQUAAAAVbGlxdWlkdXR5QXNzZXRBZGRyZXNzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA1wb29sQW1vdW50S2V5BQAAAA1uZXdQb29sQW1vdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAABF1c2VyUG9vbEFtb3VudEtleQUAAAARbmV3VXNlclBvb2xBbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEXVzZXJQb29sRWFybmVkS2V5BQAAAA91c2VyRWFybmVkVG90YWwFAAAAA25pbAkAAAIAAAABAgAAACZZb3UgaGF2ZSBub3Qgc3VjaCBiYWxhbmNlIGZvciB3aXRoZHJhdwAAAAEAAAACYjYBAAAAAmI3AAAAAAkAAfQAAAADCAUAAAACYjYAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJiNgAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJiNgAAAA9zZW5kZXJQdWJsaWNLZXnaaitB", "height": 1777801, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CqhVUdawARc4KnboWZVw9oBpmTksMUSXzxAfz8zzbnF9 Next: BsTRcwfFnAp7nzp6mDB92k5PmDQPy5GybQXCuXhiVYSt Diff:
Old | New | Differences | |
---|---|---|---|
19 | 19 | func m (k,l) = { | |
20 | 20 | let n = value(indexOf(f, l)) | |
21 | 21 | let o = g[n] | |
22 | - | ||
22 | + | StringEntry((l + "_liquidity_token"), o) :: k | |
23 | 23 | } | |
24 | 24 | ||
25 | 25 | func p (k,l) = { | |
26 | 26 | let n = value(indexOf(f, l)) | |
27 | 27 | let o = h[n] | |
28 | - | ||
28 | + | StringEntry((l + "_service_token"), o) :: k | |
29 | 29 | } | |
30 | 30 | ||
31 | 31 | func q (k,l) = { | |
32 | 32 | let n = value(indexOf(f, l)) | |
33 | 33 | let o = i[n] | |
34 | - | ||
34 | + | IntegerEntry((l + "_service_token"), o) :: k | |
35 | 35 | } | |
36 | 36 | ||
37 | - | func r (k,l) = BooleanEntry((l + "_active"), true) | |
37 | + | func r (k,l) = BooleanEntry((l + "_active"), true) :: k | |
38 | 38 | ||
39 | 39 | let s = { | |
40 | + | let t = f | |
41 | + | let u = size(t) | |
42 | + | let v = nil | |
43 | + | func w (x,y) = if ((y >= u)) | |
44 | + | then x | |
45 | + | else j(x, t[y]) | |
46 | + | ||
47 | + | func z (x,y) = if ((y >= u)) | |
48 | + | then x | |
49 | + | else throw("List size exceeds 20") | |
50 | + | ||
51 | + | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
52 | + | } | |
53 | + | let A = { | |
54 | + | let t = f | |
55 | + | let u = size(t) | |
56 | + | let v = nil | |
57 | + | func w (x,y) = if ((y >= u)) | |
58 | + | then x | |
59 | + | else m(x, t[y]) | |
60 | + | ||
61 | + | func z (x,y) = if ((y >= u)) | |
62 | + | then x | |
63 | + | else throw("List size exceeds 20") | |
64 | + | ||
65 | + | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
66 | + | } | |
67 | + | let B = { | |
40 | 68 | let t = f | |
41 | 69 | let u = size(t) | |
42 | 70 | let v = nil | |
50 | 78 | ||
51 | 79 | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
52 | 80 | } | |
53 | - | let | |
81 | + | let C = { | |
54 | 82 | let t = f | |
55 | 83 | let u = size(t) | |
56 | 84 | let v = nil | |
64 | 92 | ||
65 | 93 | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
66 | 94 | } | |
67 | - | let | |
95 | + | let D = { | |
68 | 96 | let t = f | |
69 | 97 | let u = size(t) | |
70 | 98 | let v = nil | |
78 | 106 | ||
79 | 107 | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
80 | 108 | } | |
81 | - | B | |
109 | + | ((((s ++ A) ++ B) ++ C) ++ D) | |
82 | 110 | } | |
83 | 111 | ||
84 | 112 | ||
85 | 113 | ||
86 | 114 | @Callable(d) | |
87 | 115 | func call () = { | |
88 | - | let | |
89 | - | let | |
90 | - | [BinaryEntry("bin", base58''), BooleanEntry("bool", true), IntegerEntry("int", 1), StringEntry("str", ""), DeleteEntry("str"), | |
116 | + | let E = Issue("Asset1", "Asset from dApp", 100000, 2, true, unit, 0) | |
117 | + | let F = calculateAssetId(E) | |
118 | + | [BinaryEntry("bin", base58''), BooleanEntry("bool", true), IntegerEntry("int", 1), StringEntry("str", ""), DeleteEntry("str"), E] | |
91 | 119 | } | |
92 | 120 | ||
93 | 121 | ||
94 | 122 | ||
95 | 123 | @Callable(e) | |
96 | 124 | func deposit (l) = { | |
97 | - | let | |
98 | - | let | |
99 | - | let | |
100 | - | let | |
101 | - | let | |
102 | - | let | |
103 | - | let | |
104 | - | let | |
105 | - | let | |
106 | - | if ($isInstanceOf( | |
125 | + | let G = e.payments[0].amount | |
126 | + | let H = e.payments[0].assetId | |
127 | + | let I = (l + "_asset_balance") | |
128 | + | let J = toString(e.caller) | |
129 | + | let K = (((l + "_") + J) + "_asset_balance") | |
130 | + | let L = getStringValue(this, (l + "_service_token")) | |
131 | + | let M = getIntegerValue(this, I) | |
132 | + | let N = { | |
133 | + | let O = getInteger(K) | |
134 | + | if ($isInstanceOf(O, "Int")) | |
107 | 135 | then { | |
108 | - | let | |
109 | - | | |
136 | + | let P = O | |
137 | + | P | |
110 | 138 | } | |
111 | 139 | else { | |
112 | - | let | |
140 | + | let Q = O | |
113 | 141 | 0 | |
114 | 142 | } | |
115 | 143 | } | |
116 | - | let | |
117 | - | let | |
118 | - | let | |
119 | - | [Reissue(fromBase58String( | |
144 | + | let R = (M + G) | |
145 | + | let S = ((G - fraction(G, 1, a, HALFUP)) - fraction(G, 1, b, HALFUP)) | |
146 | + | let T = (N + S) | |
147 | + | [Reissue(fromBase58String(L), S, true), ScriptTransfer(e.caller, S, fromBase58String(L)), IntegerEntry(I, R), IntegerEntry(K, T)] | |
120 | 148 | } | |
121 | 149 | ||
122 | 150 | ||
123 | 151 | ||
124 | 152 | @Callable(e) | |
125 | - | func withdraw (l, | |
126 | - | let | |
127 | - | let | |
128 | - | let | |
129 | - | let | |
130 | - | let | |
131 | - | let | |
132 | - | let | |
133 | - | let | |
134 | - | let | |
135 | - | if ($isInstanceOf( | |
153 | + | func withdraw (l,U) = { | |
154 | + | let G = e.payments[0].amount | |
155 | + | let H = e.payments[0].assetId | |
156 | + | let I = (l + "_asset_balance") | |
157 | + | let J = toString(e.caller) | |
158 | + | let K = (((l + "_") + J) + "_asset_balance") | |
159 | + | let V = (((l + "_") + J) + "_earned") | |
160 | + | let M = getIntegerValue(this, I) | |
161 | + | let N = { | |
162 | + | let O = getInteger(K) | |
163 | + | if ($isInstanceOf(O, "Int")) | |
136 | 164 | then { | |
137 | - | let | |
138 | - | | |
165 | + | let P = O | |
166 | + | P | |
139 | 167 | } | |
140 | 168 | else { | |
141 | - | let | |
169 | + | let Q = O | |
142 | 170 | 0 | |
143 | 171 | } | |
144 | 172 | } | |
145 | - | let | |
146 | - | let | |
147 | - | if ($isInstanceOf( | |
173 | + | let W = { | |
174 | + | let O = getInteger(V) | |
175 | + | if ($isInstanceOf(O, "Int")) | |
148 | 176 | then { | |
149 | - | let | |
150 | - | | |
177 | + | let P = O | |
178 | + | P | |
151 | 179 | } | |
152 | 180 | else { | |
153 | - | let | |
181 | + | let Q = O | |
154 | 182 | 0 | |
155 | 183 | } | |
156 | 184 | } | |
157 | - | let | |
158 | - | let | |
159 | - | let | |
160 | - | if ($isInstanceOf( | |
185 | + | let X = getStringValue(this, (l + "_liquidity_token")) | |
186 | + | let Y = { | |
187 | + | let O = assetInfo(fromBase58String(X)) | |
188 | + | if ($isInstanceOf(O, "Asset")) | |
161 | 189 | then { | |
162 | - | let | |
163 | - | | |
190 | + | let Z = O | |
191 | + | Z.decimals | |
164 | 192 | } | |
165 | 193 | else throw("Can't find asset") | |
166 | 194 | } | |
167 | - | let | |
168 | - | let | |
169 | - | let | |
170 | - | let | |
171 | - | if (( | |
195 | + | let L = getStringValue(this, (l + "_service_token")) | |
196 | + | let aa = (U + W) | |
197 | + | let ab = ((G - fraction(G, 1, c, HALFUP)) - fraction(G, 1, b, HALFUP)) | |
198 | + | let R = (M - ab) | |
199 | + | if ((N >= G)) | |
172 | 200 | then { | |
173 | - | let | |
174 | - | [Burn(fromBase58String( | |
201 | + | let T = (N - ab) | |
202 | + | [Burn(fromBase58String(L), ab), ScriptTransfer(e.caller, ab, fromBase58String(X)), IntegerEntry(I, R), IntegerEntry(K, T), IntegerEntry(V, aa)] | |
175 | 203 | } | |
176 | 204 | else throw("You have not such balance for withdraw") | |
177 | 205 | } | |
178 | 206 | ||
179 | 207 | ||
180 | - | @Verifier( | |
181 | - | func | |
208 | + | @Verifier(ac) | |
209 | + | func ad () = sigVerify(ac.bodyBytes, ac.proofs[0], ac.senderPublicKey) | |
182 | 210 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = 1000 | |
5 | 5 | ||
6 | 6 | let b = 10000 | |
7 | 7 | ||
8 | 8 | let c = 10000 | |
9 | 9 | ||
10 | 10 | @Callable(d) | |
11 | 11 | func init () = [IntegerEntry("3PPH7x7iqobW5ziyiRCic19rQqKr6nPYaK1_asset_balance", 7197869)] | |
12 | 12 | ||
13 | 13 | ||
14 | 14 | ||
15 | 15 | @Callable(e) | |
16 | 16 | func addPools (f,g,h,i) = { | |
17 | 17 | func j (k,l) = IntegerEntry((l + "_asset_balance"), 0) :: k | |
18 | 18 | ||
19 | 19 | func m (k,l) = { | |
20 | 20 | let n = value(indexOf(f, l)) | |
21 | 21 | let o = g[n] | |
22 | - | ||
22 | + | StringEntry((l + "_liquidity_token"), o) :: k | |
23 | 23 | } | |
24 | 24 | ||
25 | 25 | func p (k,l) = { | |
26 | 26 | let n = value(indexOf(f, l)) | |
27 | 27 | let o = h[n] | |
28 | - | ||
28 | + | StringEntry((l + "_service_token"), o) :: k | |
29 | 29 | } | |
30 | 30 | ||
31 | 31 | func q (k,l) = { | |
32 | 32 | let n = value(indexOf(f, l)) | |
33 | 33 | let o = i[n] | |
34 | - | ||
34 | + | IntegerEntry((l + "_service_token"), o) :: k | |
35 | 35 | } | |
36 | 36 | ||
37 | - | func r (k,l) = BooleanEntry((l + "_active"), true) | |
37 | + | func r (k,l) = BooleanEntry((l + "_active"), true) :: k | |
38 | 38 | ||
39 | 39 | let s = { | |
40 | + | let t = f | |
41 | + | let u = size(t) | |
42 | + | let v = nil | |
43 | + | func w (x,y) = if ((y >= u)) | |
44 | + | then x | |
45 | + | else j(x, t[y]) | |
46 | + | ||
47 | + | func z (x,y) = if ((y >= u)) | |
48 | + | then x | |
49 | + | else throw("List size exceeds 20") | |
50 | + | ||
51 | + | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
52 | + | } | |
53 | + | let A = { | |
54 | + | let t = f | |
55 | + | let u = size(t) | |
56 | + | let v = nil | |
57 | + | func w (x,y) = if ((y >= u)) | |
58 | + | then x | |
59 | + | else m(x, t[y]) | |
60 | + | ||
61 | + | func z (x,y) = if ((y >= u)) | |
62 | + | then x | |
63 | + | else throw("List size exceeds 20") | |
64 | + | ||
65 | + | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
66 | + | } | |
67 | + | let B = { | |
40 | 68 | let t = f | |
41 | 69 | let u = size(t) | |
42 | 70 | let v = nil | |
43 | 71 | func w (x,y) = if ((y >= u)) | |
44 | 72 | then x | |
45 | 73 | else p(x, t[y]) | |
46 | 74 | ||
47 | 75 | func z (x,y) = if ((y >= u)) | |
48 | 76 | then x | |
49 | 77 | else throw("List size exceeds 20") | |
50 | 78 | ||
51 | 79 | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
52 | 80 | } | |
53 | - | let | |
81 | + | let C = { | |
54 | 82 | let t = f | |
55 | 83 | let u = size(t) | |
56 | 84 | let v = nil | |
57 | 85 | func w (x,y) = if ((y >= u)) | |
58 | 86 | then x | |
59 | 87 | else q(x, t[y]) | |
60 | 88 | ||
61 | 89 | func z (x,y) = if ((y >= u)) | |
62 | 90 | then x | |
63 | 91 | else throw("List size exceeds 20") | |
64 | 92 | ||
65 | 93 | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
66 | 94 | } | |
67 | - | let | |
95 | + | let D = { | |
68 | 96 | let t = f | |
69 | 97 | let u = size(t) | |
70 | 98 | let v = nil | |
71 | 99 | func w (x,y) = if ((y >= u)) | |
72 | 100 | then x | |
73 | 101 | else r(x, t[y]) | |
74 | 102 | ||
75 | 103 | func z (x,y) = if ((y >= u)) | |
76 | 104 | then x | |
77 | 105 | else throw("List size exceeds 20") | |
78 | 106 | ||
79 | 107 | z(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(w(v, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20) | |
80 | 108 | } | |
81 | - | B | |
109 | + | ((((s ++ A) ++ B) ++ C) ++ D) | |
82 | 110 | } | |
83 | 111 | ||
84 | 112 | ||
85 | 113 | ||
86 | 114 | @Callable(d) | |
87 | 115 | func call () = { | |
88 | - | let | |
89 | - | let | |
90 | - | [BinaryEntry("bin", base58''), BooleanEntry("bool", true), IntegerEntry("int", 1), StringEntry("str", ""), DeleteEntry("str"), | |
116 | + | let E = Issue("Asset1", "Asset from dApp", 100000, 2, true, unit, 0) | |
117 | + | let F = calculateAssetId(E) | |
118 | + | [BinaryEntry("bin", base58''), BooleanEntry("bool", true), IntegerEntry("int", 1), StringEntry("str", ""), DeleteEntry("str"), E] | |
91 | 119 | } | |
92 | 120 | ||
93 | 121 | ||
94 | 122 | ||
95 | 123 | @Callable(e) | |
96 | 124 | func deposit (l) = { | |
97 | - | let | |
98 | - | let | |
99 | - | let | |
100 | - | let | |
101 | - | let | |
102 | - | let | |
103 | - | let | |
104 | - | let | |
105 | - | let | |
106 | - | if ($isInstanceOf( | |
125 | + | let G = e.payments[0].amount | |
126 | + | let H = e.payments[0].assetId | |
127 | + | let I = (l + "_asset_balance") | |
128 | + | let J = toString(e.caller) | |
129 | + | let K = (((l + "_") + J) + "_asset_balance") | |
130 | + | let L = getStringValue(this, (l + "_service_token")) | |
131 | + | let M = getIntegerValue(this, I) | |
132 | + | let N = { | |
133 | + | let O = getInteger(K) | |
134 | + | if ($isInstanceOf(O, "Int")) | |
107 | 135 | then { | |
108 | - | let | |
109 | - | | |
136 | + | let P = O | |
137 | + | P | |
110 | 138 | } | |
111 | 139 | else { | |
112 | - | let | |
140 | + | let Q = O | |
113 | 141 | 0 | |
114 | 142 | } | |
115 | 143 | } | |
116 | - | let | |
117 | - | let | |
118 | - | let | |
119 | - | [Reissue(fromBase58String( | |
144 | + | let R = (M + G) | |
145 | + | let S = ((G - fraction(G, 1, a, HALFUP)) - fraction(G, 1, b, HALFUP)) | |
146 | + | let T = (N + S) | |
147 | + | [Reissue(fromBase58String(L), S, true), ScriptTransfer(e.caller, S, fromBase58String(L)), IntegerEntry(I, R), IntegerEntry(K, T)] | |
120 | 148 | } | |
121 | 149 | ||
122 | 150 | ||
123 | 151 | ||
124 | 152 | @Callable(e) | |
125 | - | func withdraw (l, | |
126 | - | let | |
127 | - | let | |
128 | - | let | |
129 | - | let | |
130 | - | let | |
131 | - | let | |
132 | - | let | |
133 | - | let | |
134 | - | let | |
135 | - | if ($isInstanceOf( | |
153 | + | func withdraw (l,U) = { | |
154 | + | let G = e.payments[0].amount | |
155 | + | let H = e.payments[0].assetId | |
156 | + | let I = (l + "_asset_balance") | |
157 | + | let J = toString(e.caller) | |
158 | + | let K = (((l + "_") + J) + "_asset_balance") | |
159 | + | let V = (((l + "_") + J) + "_earned") | |
160 | + | let M = getIntegerValue(this, I) | |
161 | + | let N = { | |
162 | + | let O = getInteger(K) | |
163 | + | if ($isInstanceOf(O, "Int")) | |
136 | 164 | then { | |
137 | - | let | |
138 | - | | |
165 | + | let P = O | |
166 | + | P | |
139 | 167 | } | |
140 | 168 | else { | |
141 | - | let | |
169 | + | let Q = O | |
142 | 170 | 0 | |
143 | 171 | } | |
144 | 172 | } | |
145 | - | let | |
146 | - | let | |
147 | - | if ($isInstanceOf( | |
173 | + | let W = { | |
174 | + | let O = getInteger(V) | |
175 | + | if ($isInstanceOf(O, "Int")) | |
148 | 176 | then { | |
149 | - | let | |
150 | - | | |
177 | + | let P = O | |
178 | + | P | |
151 | 179 | } | |
152 | 180 | else { | |
153 | - | let | |
181 | + | let Q = O | |
154 | 182 | 0 | |
155 | 183 | } | |
156 | 184 | } | |
157 | - | let | |
158 | - | let | |
159 | - | let | |
160 | - | if ($isInstanceOf( | |
185 | + | let X = getStringValue(this, (l + "_liquidity_token")) | |
186 | + | let Y = { | |
187 | + | let O = assetInfo(fromBase58String(X)) | |
188 | + | if ($isInstanceOf(O, "Asset")) | |
161 | 189 | then { | |
162 | - | let | |
163 | - | | |
190 | + | let Z = O | |
191 | + | Z.decimals | |
164 | 192 | } | |
165 | 193 | else throw("Can't find asset") | |
166 | 194 | } | |
167 | - | let | |
168 | - | let | |
169 | - | let | |
170 | - | let | |
171 | - | if (( | |
195 | + | let L = getStringValue(this, (l + "_service_token")) | |
196 | + | let aa = (U + W) | |
197 | + | let ab = ((G - fraction(G, 1, c, HALFUP)) - fraction(G, 1, b, HALFUP)) | |
198 | + | let R = (M - ab) | |
199 | + | if ((N >= G)) | |
172 | 200 | then { | |
173 | - | let | |
174 | - | [Burn(fromBase58String( | |
201 | + | let T = (N - ab) | |
202 | + | [Burn(fromBase58String(L), ab), ScriptTransfer(e.caller, ab, fromBase58String(X)), IntegerEntry(I, R), IntegerEntry(K, T), IntegerEntry(V, aa)] | |
175 | 203 | } | |
176 | 204 | else throw("You have not such balance for withdraw") | |
177 | 205 | } | |
178 | 206 | ||
179 | 207 | ||
180 | - | @Verifier( | |
181 | - | func | |
208 | + | @Verifier(ac) | |
209 | + | func ad () = sigVerify(ac.bodyBytes, ac.proofs[0], ac.senderPublicKey) | |
182 | 210 |
github/deemru/w8io/169f3d6 61.40 ms ◑![]()