tx · 9CgsGiZDnsRpsExX9PpD5W1iNS3BUEaEthznykry6GBN 3N5BB6iE58rujeTEkymeLNcdsYF4f6iKoxr: -0.01700000 Waves 2023.03.10 12:09 [2483778] smart account 3N5BB6iE58rujeTEkymeLNcdsYF4f6iKoxr > SELF 0.00000000 Waves
{ "type": 13, "id": "9CgsGiZDnsRpsExX9PpD5W1iNS3BUEaEthznykry6GBN", "fee": 1700000, "feeAssetId": null, "timestamp": 1678439384950, "version": 2, "chainId": 84, "sender": "3N5BB6iE58rujeTEkymeLNcdsYF4f6iKoxr", "senderPublicKey": "EtZZHS4uqNXY5WPneZ8jY2aA95peXwthJVLzAMxMp379", "proofs": [ "eaTS4WB89uX3LMEzktocTdGdQ5rK17XkuMp3KkDLxfjnwu949xMKh3pGxP7mWkEzwgxDERp3GVtQYdmjpCknqqJ" ], "script": "base64:AAIFAAAAAAAABeYIAhIECgIICBIECgIICBIECgIIGBIDCgEIEgUKAwgICBIDCgEIEgMKAQgSAwoBCBIECgIICBIECgIICBIECgIICBIDCgEIEgUKAwgIBBIECgIICBIECgIIBBIDCgEIEgMKARgSAwoBCBIAEgMKAQgiA1NFUCIFRU1QVFkiDnN0YXR1c1ZlcmlmaWVkIhBzdGF0dXNVbnZlcmlmaWVkIhZsYWJlbENvbW11bml0eVZlcmlmaWVkIgxsYWJlbFBvb2xzTHAiDWRlZmF1bHRMYWJlbHMiB3Rocm93UEQiDHRocm93Tm9Bc3NldCITa2V5TWFuYWdlclB1YmxpY0tleSIaa2V5UGVuZGluZ01hbmFnZXJQdWJsaWNLZXkiD2tleUFkbWluUHViS2V5cyIUa2V5VXNlclBvb2xzQ29udHJhY3QiEmtleUZhY3RvcnlDb250cmFjdCIKa2V5Q3JlYXRlZCIHYXNzZXRJZCIHa2V5TG9nbyIJa2V5VGlja2VyIglrZXlTdGF0dXMiE2tleUFzc2V0UG9vbHNOdW1iZXIiEmtleVRpY2tlclRvQXNzZXRJZCIGdGlja2VyIhJrZXlBc3NldElkVG9UaWNrZXIiIGtleUFtb3VudEFuZFByaWNlQXNzZXRzVG9McEFzc2V0IgthbW91bnRBc3NldCIKcHJpY2VBc3NldCIga2V5THBBc3NldFRvQW1vdW50QW5kUHJpY2VBc3NldHMiB2xwQXNzZXQiDmtleUFzc2V0TGFiZWxzIglrZXlMYWJlbHMiDGtleUFzc2V0TmFtZSITa2V5QXNzZXREZXNjcmlwdGlvbiIOZ2V0VmFsdWVPckZhaWwiB2FkZHJlc3MiA2tleSIEdHlwZSIFZXJyb3IiByRtYXRjaDAiA3N0ciIDaW50IgxnZXRTdHJPckZhaWwiAUAiDGdldEludE9yRmFpbCIKaXNWZXJpZmllZCIJZ2V0TGFiZWxzIgFzIg5nZXRBc3NldExhYmVscyIWbWFuYWdlclB1YmxpY0tleU9yVW5pdCIdcGVuZGluZ01hbmFnZXJQdWJsaWNLZXlPclVuaXQiC211c3RNYW5hZ2VyIgFpIgJwayIJbXVzdEFkbWluIghhZG1pblBLcyIJaXNNYW5hZ2VyIglpc0NyZWF0ZWQiEHZlcmlmaWVkVG9TdGF0dXMiCHZlcmlmaWVkIg9hZGRMYWJlbEFjdGlvbnMiBWxhYmVsIgx0aHJvd09uRXJyb3IiBmxhYmVscyILYXNzZXRMYWJlbHMiCmNoZWNrTGFiZWwiDm5ld0Fzc2V0TGFiZWxzIhJkZWxldGVMYWJlbEFjdGlvbnMiEnNldFZlcmlmaWVkQWN0aW9ucyIdbGFiZWxDb21tdW5pdHlWZXJpZmllZEFjdGlvbnMiE3VwZGF0ZVRpY2tlckFjdGlvbnMiC2NoZWNrVGlja2VyIhNsaW5rZWRBc3NldElkT3JVbml0Ig10aWNrZXJJc1ZhbGlkIgdhc3NldElEIglhc3NldE5hbWUiC2NoZWNrQ2FsbGVyIhBhc3NldERlc2NyaXB0aW9uIhF1c2VyUG9vbHNDb250cmFjdCINY2hlY2tzQWRkcmVzcyIPZmFjdG9yeUNvbnRyYWN0IgxjaGVja0FkZHJlc3MiE2Fzc2V0UG9vbHNOdW1iZXJLZXkiEGFzc2V0UG9vbHNOdW1iZXIiCmNoZWNrQXNzZXQiBGxvZ28iDGlzQ3JlYXRlZE5vdyIOc2V0TG9nb0FjdGlvbnMiBmNoZWNrcyIGYWN0aW9uIhVvblZlcmlmaWNhdGlvbkxvc3NJbnYiC3Bvb2xzTnVtYmVyIgdhY3Rpb25zIgxhZG1pblB1YktleXMiF3BlbmRpbmdNYW5hZ2VyUHVibGljS2V5IhVjaGVja01hbmFnZXJQdWJsaWNLZXkiAnBtIgVoYXNQTSIHY2hlY2tQTSICdHgiBnZlcmlmeSIPdGFyZ2V0UHVibGljS2V5AAAAKwAAAAABYQIAAAACX18AAAAAAWICAAAAAAAAAAABYwAAAAAAAAAAAgAAAAABZAAAAAAAAAAAAAAAAAABZQIAAAASQ09NTVVOSVRZX1ZFUklGSUVEAAAAAAFmAgAAAAhQT09MU19MUAAAAAABZwkABEwAAAACBQAAAAFlCQAETAAAAAIFAAAAAWYFAAAAA25pbAEAAAABaAAAAAAJAAACAAAAAQIAAAARUGVybWlzc2lvbiBkZW5pZWQBAAAAAWkAAAAACQAAAgAAAAECAAAAFEFzc2V0IGRvZXNuJ3QgZXhpc3RzAQAAAAFqAAAAAAIAAAAUJXNfX21hbmFnZXJQdWJsaWNLZXkBAAAAAWsAAAAAAgAA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", "height": 2483778, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 28PS2AAawfpaE9goU5kHYXXoCK7zRkpFEo9htXFRo6sw Next: 5ywmBtsuzkxbnzcF4wbq5Uzjq8gViLaBKLYKsF9jezG1 Diff:
Old | New | Differences | |
---|---|---|---|
69 | 69 | func D () = makeString(["%s", "labels"], a) | |
70 | 70 | ||
71 | 71 | ||
72 | - | func E (F,G,H) = { | |
73 | - | let I = makeString(["mandatory ", toString(F), ".", G, " is not defined"], "") | |
72 | + | func E (p) = makeString(["%s%s", "assetName", p], a) | |
73 | + | ||
74 | + | ||
75 | + | func F (p) = makeString(["%s%s", "assetDescription", p], a) | |
76 | + | ||
77 | + | ||
78 | + | func G (H,I,J) = { | |
79 | + | let K = makeString(["mandatory ", toString(H), ".", I, " is not defined"], "") | |
74 | 80 | valueOrErrorMessage({ | |
75 | - | let | |
76 | - | if ($isInstanceOf( | |
81 | + | let L = J | |
82 | + | if ($isInstanceOf(L, "String")) | |
77 | 83 | then { | |
78 | - | let | |
79 | - | getString( | |
84 | + | let M = L | |
85 | + | getString(H, I) | |
80 | 86 | } | |
81 | - | else if ($isInstanceOf( | |
87 | + | else if ($isInstanceOf(L, "Int")) | |
82 | 88 | then { | |
83 | - | let | |
84 | - | getInteger( | |
89 | + | let N = L | |
90 | + | getInteger(H, I) | |
85 | 91 | } | |
86 | 92 | else throw("invalid entry type") | |
87 | - | }, | |
93 | + | }, K) | |
88 | 94 | } | |
89 | 95 | ||
90 | 96 | ||
91 | - | func | |
92 | - | let | |
93 | - | if ($isInstanceOf( | |
94 | - | then | |
97 | + | func O (H,I) = { | |
98 | + | let P = G(H, I, "") | |
99 | + | if ($isInstanceOf(P, "String")) | |
100 | + | then P | |
95 | 101 | else throw("Couldn't cast Int|String to String") | |
96 | 102 | } | |
97 | 103 | ||
98 | 104 | ||
99 | - | func | |
100 | - | let | |
101 | - | if ($isInstanceOf( | |
102 | - | then | |
105 | + | func Q (H,I) = { | |
106 | + | let P = G(H, I, 0) | |
107 | + | if ($isInstanceOf(P, "Int")) | |
108 | + | then P | |
103 | 109 | else throw("Couldn't cast Int|String to Int") | |
104 | 110 | } | |
105 | 111 | ||
106 | 112 | ||
107 | - | func | |
113 | + | func R (p) = (valueOrElse(getInteger(s(p)), d) == c) | |
108 | 114 | ||
109 | 115 | ||
110 | - | func | |
111 | - | let | |
112 | - | if ($isInstanceOf( | |
116 | + | func S () = { | |
117 | + | let L = getString(D()) | |
118 | + | if ($isInstanceOf(L, "String")) | |
113 | 119 | then { | |
114 | - | let | |
115 | - | if ((size( | |
120 | + | let T = L | |
121 | + | if ((size(T) == 0)) | |
116 | 122 | then nil | |
117 | - | else split( | |
123 | + | else split(T, a) | |
118 | 124 | } | |
119 | 125 | else nil | |
120 | 126 | } | |
121 | 127 | ||
122 | 128 | ||
123 | - | func | |
124 | - | let | |
125 | - | if ($isInstanceOf( | |
129 | + | func U (p) = { | |
130 | + | let L = getString(C(p)) | |
131 | + | if ($isInstanceOf(L, "String")) | |
126 | 132 | then { | |
127 | - | let | |
128 | - | if ((size( | |
133 | + | let T = L | |
134 | + | if ((size(T) == 0)) | |
129 | 135 | then nil | |
130 | - | else split( | |
136 | + | else split(T, a) | |
131 | 137 | } | |
132 | 138 | else nil | |
133 | 139 | } | |
134 | 140 | ||
135 | 141 | ||
136 | - | func | |
137 | - | let | |
138 | - | if ($isInstanceOf( | |
142 | + | func V () = { | |
143 | + | let L = getString(j()) | |
144 | + | if ($isInstanceOf(L, "String")) | |
139 | 145 | then { | |
140 | - | let | |
141 | - | fromBase58String( | |
146 | + | let T = L | |
147 | + | fromBase58String(T) | |
142 | 148 | } | |
143 | - | else if ($isInstanceOf( | |
149 | + | else if ($isInstanceOf(L, "Unit")) | |
144 | 150 | then unit | |
145 | 151 | else throw("Match error") | |
146 | 152 | } | |
147 | 153 | ||
148 | 154 | ||
149 | - | func | |
150 | - | let | |
151 | - | if ($isInstanceOf( | |
155 | + | func W () = { | |
156 | + | let L = getString(k()) | |
157 | + | if ($isInstanceOf(L, "String")) | |
152 | 158 | then { | |
153 | - | let | |
154 | - | fromBase58String( | |
159 | + | let T = L | |
160 | + | fromBase58String(T) | |
155 | 161 | } | |
156 | - | else if ($isInstanceOf( | |
162 | + | else if ($isInstanceOf(L, "Unit")) | |
157 | 163 | then unit | |
158 | 164 | else throw("Match error") | |
159 | 165 | } | |
160 | 166 | ||
161 | 167 | ||
162 | - | func | |
163 | - | let | |
164 | - | if ($isInstanceOf( | |
168 | + | func X (Y) = { | |
169 | + | let L = V() | |
170 | + | if ($isInstanceOf(L, "ByteVector")) | |
165 | 171 | then { | |
166 | - | let | |
167 | - | if (( | |
172 | + | let Z = L | |
173 | + | if ((Y.callerPublicKey == Z)) | |
168 | 174 | then true | |
169 | 175 | else h() | |
170 | 176 | } | |
171 | - | else if ($isInstanceOf( | |
172 | - | then if (( | |
177 | + | else if ($isInstanceOf(L, "Unit")) | |
178 | + | then if ((Y.caller == this)) | |
173 | 179 | then true | |
174 | 180 | else h() | |
175 | 181 | else throw("Match error") | |
176 | 182 | } | |
177 | 183 | ||
178 | 184 | ||
179 | - | func | |
180 | - | let | |
181 | - | if (containsElement( | |
185 | + | func aa (Y) = { | |
186 | + | let ab = split(valueOrElse(getString(l()), b), a) | |
187 | + | if (containsElement(ab, toBase58String(Y.callerPublicKey))) | |
182 | 188 | then true | |
183 | 189 | else { | |
184 | - | let | |
185 | - | if (( | |
190 | + | let ac = X(Y) | |
191 | + | if ((ac == ac)) | |
186 | 192 | then true | |
187 | 193 | else throw("Strict value is not equal to itself.") | |
188 | 194 | } | |
189 | 195 | } | |
190 | 196 | ||
191 | 197 | ||
192 | - | func | |
198 | + | func ad (p) = valueOrElse(getBoolean(o(p)), false) | |
193 | 199 | ||
194 | 200 | ||
195 | - | func | |
201 | + | func ae (af) = if (af) | |
196 | 202 | then c | |
197 | 203 | else d | |
198 | 204 | ||
199 | 205 | ||
200 | - | func | |
201 | - | let | |
202 | - | let | |
203 | - | let | |
206 | + | func ag (p,ah,ai) = { | |
207 | + | let aj = S() | |
208 | + | let ak = U(p) | |
209 | + | let al = if (containsElement(aj, ah)) | |
204 | 210 | then true | |
205 | 211 | else throw("Label doesn't exist") | |
206 | - | if (( | |
212 | + | if ((al == al)) | |
207 | 213 | then { | |
208 | - | let | |
209 | - | then if ( | |
214 | + | let am = if (containsElement(ak, ah)) | |
215 | + | then if (ai) | |
210 | 216 | then throw("Label has already been added") | |
211 | - | else | |
212 | - | else ( | |
213 | - | [StringEntry(C(p), makeString( | |
217 | + | else ak | |
218 | + | else (ak :+ ah) | |
219 | + | [StringEntry(C(p), makeString(am, a))] | |
214 | 220 | } | |
215 | 221 | else throw("Strict value is not equal to itself.") | |
216 | 222 | } | |
217 | 223 | ||
218 | 224 | ||
219 | - | func | |
220 | - | let | |
221 | - | let | |
222 | - | then removeByIndex( | |
223 | - | else if ( | |
225 | + | func an (p,ah,ai) = { | |
226 | + | let ak = U(p) | |
227 | + | let am = if (containsElement(ak, ah)) | |
228 | + | then removeByIndex(ak, value(indexOf(ak, ah))) | |
229 | + | else if (ai) | |
224 | 230 | then throw("Label wasn't added") | |
225 | - | else | |
226 | - | [StringEntry(C(p), makeString( | |
231 | + | else ak | |
232 | + | [StringEntry(C(p), makeString(am, a))] | |
227 | 233 | } | |
228 | 234 | ||
229 | 235 | ||
230 | - | func | |
231 | - | let | |
232 | - | then | |
233 | - | else | |
234 | - | ([IntegerEntry(s(p), | |
236 | + | func ao (p,af) = { | |
237 | + | let ap = if (af) | |
238 | + | then ag(p, e, false) | |
239 | + | else an(p, e, false) | |
240 | + | ([IntegerEntry(s(p), ae(af))] ++ ap) | |
235 | 241 | } | |
236 | 242 | ||
237 | 243 | ||
238 | - | func | |
239 | - | let | |
240 | - | let | |
241 | - | let | |
242 | - | then if (( | |
244 | + | func aq (p,v) = { | |
245 | + | let ar = { | |
246 | + | let as = getString(u(v)) | |
247 | + | let at = if ((v != "")) | |
248 | + | then if ((as == unit)) | |
243 | 249 | then true | |
244 | - | else (value( | |
250 | + | else (value(as) == p) | |
245 | 251 | else false | |
246 | - | if ( | |
252 | + | if (at) | |
247 | 253 | then true | |
248 | 254 | else throw("Invalid ticker") | |
249 | 255 | } | |
250 | - | if (( | |
256 | + | if ((ar == ar)) | |
251 | 257 | then [StringEntry(w(p), v), StringEntry(u(v), p)] | |
252 | 258 | else throw("Strict value is not equal to itself.") | |
253 | 259 | } | |
254 | 260 | ||
255 | 261 | ||
256 | - | @Callable(W) | |
257 | - | func constructor (as,ah) = { | |
258 | - | let at = V(W) | |
259 | - | if ((at == at)) | |
262 | + | @Callable(Y) | |
263 | + | func setAssetName (au,av) = { | |
264 | + | let aw = aa(Y) | |
265 | + | if ((aw == aw)) | |
266 | + | then [StringEntry(E(au), av)] | |
267 | + | else throw("Strict value is not equal to itself.") | |
268 | + | } | |
269 | + | ||
270 | + | ||
271 | + | ||
272 | + | @Callable(Y) | |
273 | + | func setAssetDescription (au,ax) = { | |
274 | + | let aw = aa(Y) | |
275 | + | if ((aw == aw)) | |
276 | + | then [StringEntry(F(au), ax)] | |
277 | + | else throw("Strict value is not equal to itself.") | |
278 | + | } | |
279 | + | ||
280 | + | ||
281 | + | ||
282 | + | @Callable(Y) | |
283 | + | func constructor (ay,aj) = { | |
284 | + | let aw = X(Y) | |
285 | + | if ((aw == aw)) | |
260 | 286 | then { | |
261 | - | let | |
262 | - | if (( | |
263 | - | then [StringEntry(m(), | |
287 | + | let az = valueOrErrorMessage(addressFromString(ay), "Invalid address") | |
288 | + | if ((az == az)) | |
289 | + | then [StringEntry(m(), ay), StringEntry(D(), makeString((g ++ aj), a))] | |
264 | 290 | else throw("Strict value is not equal to itself.") | |
265 | 291 | } | |
266 | 292 | else throw("Strict value is not equal to itself.") | |
268 | 294 | ||
269 | 295 | ||
270 | 296 | ||
271 | - | @Callable( | |
272 | - | func constructorV2 ( | |
273 | - | let | |
274 | - | if (( | |
297 | + | @Callable(Y) | |
298 | + | func constructorV2 (aA) = { | |
299 | + | let aw = X(Y) | |
300 | + | if ((aw == aw)) | |
275 | 301 | then { | |
276 | - | let | |
277 | - | if (( | |
278 | - | then [StringEntry(n(), | |
302 | + | let aB = valueOrErrorMessage(addressFromString(aA), "invalid factory contract address") | |
303 | + | if ((aB == aB)) | |
304 | + | then [StringEntry(n(), aA)] | |
279 | 305 | else throw("Strict value is not equal to itself.") | |
280 | 306 | } | |
281 | 307 | else throw("Strict value is not equal to itself.") | |
283 | 309 | ||
284 | 310 | ||
285 | 311 | ||
286 | - | @Callable( | |
312 | + | @Callable(Y) | |
287 | 313 | func addAssetsLink (y,z,B) = { | |
288 | - | let | |
289 | - | if (( | |
314 | + | let aw = aa(Y) | |
315 | + | if ((aw == aw)) | |
290 | 316 | then [StringEntry(x(y, z), B), StringEntry(A(B), makeString([y, z], a))] | |
291 | 317 | else throw("Strict value is not equal to itself.") | |
292 | 318 | } | |
293 | 319 | ||
294 | 320 | ||
295 | 321 | ||
296 | - | @Callable( | |
322 | + | @Callable(Y) | |
297 | 323 | func increaseAssetPoolsNumber (p) = { | |
298 | - | let | |
299 | - | if (( | |
324 | + | let aw = aa(Y) | |
325 | + | if ((aw == aw)) | |
300 | 326 | then { | |
301 | - | let | |
302 | - | let | |
303 | - | [IntegerEntry( | |
327 | + | let aC = t(p) | |
328 | + | let aD = valueOrElse(getInteger(aC), 0) | |
329 | + | [IntegerEntry(aC, (aD + 1))] | |
304 | 330 | } | |
305 | 331 | else throw("Strict value is not equal to itself.") | |
306 | 332 | } | |
307 | 333 | ||
308 | 334 | ||
309 | 335 | ||
310 | - | @Callable( | |
311 | - | func createLabel ( | |
312 | - | let | |
313 | - | let | |
314 | - | if (( | |
336 | + | @Callable(Y) | |
337 | + | func createLabel (ah) = { | |
338 | + | let aj = S() | |
339 | + | let aw = aa(Y) | |
340 | + | if ((aw == aw)) | |
315 | 341 | then { | |
316 | - | let | |
342 | + | let al = [if (!(contains(ah, a))) | |
317 | 343 | then true | |
318 | - | else throw("Invalid label name"), if (!(containsElement( | |
344 | + | else throw("Invalid label name"), if (!(containsElement(aj, ah))) | |
319 | 345 | then true | |
320 | 346 | else throw("Label exists")] | |
321 | - | if (( | |
322 | - | then [StringEntry(D(), makeString(( | |
347 | + | if ((al == al)) | |
348 | + | then [StringEntry(D(), makeString((aj :+ ah), a))] | |
323 | 349 | else throw("Strict value is not equal to itself.") | |
324 | 350 | } | |
325 | 351 | else throw("Strict value is not equal to itself.") | |
327 | 353 | ||
328 | 354 | ||
329 | 355 | ||
330 | - | @Callable( | |
331 | - | func dropLabel ( | |
332 | - | let | |
333 | - | let | |
334 | - | if (( | |
356 | + | @Callable(Y) | |
357 | + | func dropLabel (ah) = { | |
358 | + | let aj = S() | |
359 | + | let aw = X(Y) | |
360 | + | if ((aw == aw)) | |
335 | 361 | then { | |
336 | - | let | |
362 | + | let al = if (containsElement(aj, ah)) | |
337 | 363 | then true | |
338 | 364 | else throw("Label doesn't exist") | |
339 | - | if (( | |
340 | - | then [StringEntry(D(), makeString(removeByIndex( | |
365 | + | if ((al == al)) | |
366 | + | then [StringEntry(D(), makeString(removeByIndex(aj, value(indexOf(aj, ah))), a))] | |
341 | 367 | else throw("Strict value is not equal to itself.") | |
342 | 368 | } | |
343 | 369 | else throw("Strict value is not equal to itself.") | |
345 | 371 | ||
346 | 372 | ||
347 | 373 | ||
348 | - | @Callable( | |
349 | - | func addLabel (p, | |
350 | - | let | |
351 | - | if (( | |
352 | - | then | |
374 | + | @Callable(Y) | |
375 | + | func addLabel (p,ah) = { | |
376 | + | let aw = aa(Y) | |
377 | + | if ((aw == aw)) | |
378 | + | then ag(p, ah, true) | |
353 | 379 | else throw("Strict value is not equal to itself.") | |
354 | 380 | } | |
355 | 381 | ||
356 | 382 | ||
357 | 383 | ||
358 | - | @Callable( | |
359 | - | func deleteLabel (p, | |
360 | - | let | |
361 | - | if (( | |
362 | - | then | |
384 | + | @Callable(Y) | |
385 | + | func deleteLabel (p,ah) = { | |
386 | + | let aw = aa(Y) | |
387 | + | if ((aw == aw)) | |
388 | + | then an(p, ah, true) | |
363 | 389 | else throw("Strict value is not equal to itself.") | |
364 | 390 | } | |
365 | 391 | ||
366 | 392 | ||
367 | 393 | ||
368 | - | @Callable( | |
394 | + | @Callable(Y) | |
369 | 395 | func updateTicker (p,v) = { | |
370 | - | let | |
371 | - | if (( | |
396 | + | let aw = aa(Y) | |
397 | + | if ((aw == aw)) | |
372 | 398 | then { | |
373 | - | let | |
399 | + | let aE = if (ad(p)) | |
374 | 400 | then true | |
375 | 401 | else i() | |
376 | - | if (( | |
377 | - | then | |
402 | + | if ((aE == aE)) | |
403 | + | then aq(p, v) | |
378 | 404 | else throw("Strict value is not equal to itself.") | |
379 | 405 | } | |
380 | 406 | else throw("Strict value is not equal to itself.") | |
382 | 408 | ||
383 | 409 | ||
384 | 410 | ||
385 | - | @Callable( | |
411 | + | @Callable(Y) | |
386 | 412 | func deleteTicker (p) = { | |
387 | - | let | |
388 | - | if (( | |
413 | + | let aw = aa(Y) | |
414 | + | if ((aw == aw)) | |
389 | 415 | then { | |
390 | 416 | let v = valueOrErrorMessage(getString(w(p)), "Invalid asset") | |
391 | 417 | [DeleteEntry(w(p)), DeleteEntry(u(v))] | |
395 | 421 | ||
396 | 422 | ||
397 | 423 | ||
398 | - | @Callable( | |
399 | - | func createOrUpdate (p, | |
400 | - | let | |
401 | - | if (( | |
424 | + | @Callable(Y) | |
425 | + | func createOrUpdate (p,aF,af) = { | |
426 | + | let aw = aa(Y) | |
427 | + | if ((aw == aw)) | |
402 | 428 | then { | |
403 | - | let | |
404 | - | if (( | |
429 | + | let aG = !(ad(p)) | |
430 | + | if ((aG == aG)) | |
405 | 431 | then { | |
406 | - | let | |
432 | + | let aH = if ((aF == "")) | |
407 | 433 | then nil | |
408 | - | else [StringEntry(q(p), | |
409 | - | $Tuple2((([BooleanEntry(o(p), true)] ++ | |
434 | + | else [StringEntry(q(p), aF)] | |
435 | + | $Tuple2((([BooleanEntry(o(p), true)] ++ aH) ++ ao(p, af)), aG) | |
410 | 436 | } | |
411 | 437 | else throw("Strict value is not equal to itself.") | |
412 | 438 | } | |
415 | 441 | ||
416 | 442 | ||
417 | 443 | ||
418 | - | @Callable( | |
419 | - | func setLogo (p, | |
420 | - | let | |
444 | + | @Callable(Y) | |
445 | + | func setLogo (p,aF) = { | |
446 | + | let aI = [aa(Y), if (ad(p)) | |
421 | 447 | then true | |
422 | 448 | else i()] | |
423 | - | if (( | |
449 | + | if ((aI == aI)) | |
424 | 450 | then { | |
425 | - | let | |
451 | + | let aJ = if ((aF == "")) | |
426 | 452 | then DeleteEntry(q(p)) | |
427 | - | else StringEntry(q(p), | |
428 | - | [ | |
453 | + | else StringEntry(q(p), aF) | |
454 | + | [aJ] | |
429 | 455 | } | |
430 | 456 | else throw("Strict value is not equal to itself.") | |
431 | 457 | } | |
432 | 458 | ||
433 | 459 | ||
434 | 460 | ||
435 | - | @Callable( | |
436 | - | func setVerified (p, | |
437 | - | let | |
461 | + | @Callable(Y) | |
462 | + | func setVerified (p,af) = { | |
463 | + | let aI = [aa(Y), if (ad(p)) | |
438 | 464 | then true | |
439 | 465 | else i()] | |
440 | - | if (( | |
466 | + | if ((aI == aI)) | |
441 | 467 | then { | |
442 | - | let | |
468 | + | let aK = if (!(af)) | |
443 | 469 | then { | |
444 | - | let | |
445 | - | invoke( | |
470 | + | let aA = valueOrErrorMessage(addressFromString(O(this, n())), "invalid factory contract address") | |
471 | + | invoke(aA, "onVerificationLoss", [p], nil) | |
446 | 472 | } | |
447 | 473 | else unit | |
448 | - | if (( | |
449 | - | then $Tuple2( | |
474 | + | if ((aK == aK)) | |
475 | + | then $Tuple2(ao(p, af), unit) | |
450 | 476 | else throw("Strict value is not equal to itself.") | |
451 | 477 | } | |
452 | 478 | else throw("Strict value is not equal to itself.") | |
454 | 480 | ||
455 | 481 | ||
456 | 482 | ||
457 | - | @Callable( | |
483 | + | @Callable(Y) | |
458 | 484 | func onEliminate (p) = { | |
459 | - | let | |
460 | - | let | |
485 | + | let aL = valueOrElse(getInteger(t(p)), 0) | |
486 | + | let aM = if ((aL > 0)) | |
461 | 487 | then nil | |
462 | 488 | else [DeleteEntry(q(p))] | |
463 | - | $Tuple2( | |
489 | + | $Tuple2(aM, unit) | |
464 | 490 | } | |
465 | 491 | ||
466 | 492 | ||
467 | 493 | ||
468 | - | @Callable( | |
469 | - | func setAdmins ( | |
470 | - | let | |
471 | - | if (( | |
472 | - | then [StringEntry(l(), makeString( | |
494 | + | @Callable(Y) | |
495 | + | func setAdmins (aN) = { | |
496 | + | let aw = X(Y) | |
497 | + | if ((aw == aw)) | |
498 | + | then [StringEntry(l(), makeString(aN, a))] | |
473 | 499 | else throw("Strict value is not equal to itself.") | |
474 | 500 | } | |
475 | 501 | ||
476 | 502 | ||
477 | 503 | ||
478 | - | @Callable( | |
479 | - | func setManager ( | |
480 | - | let | |
481 | - | if (( | |
504 | + | @Callable(Y) | |
505 | + | func setManager (aO) = { | |
506 | + | let aw = X(Y) | |
507 | + | if ((aw == aw)) | |
482 | 508 | then { | |
483 | - | let | |
484 | - | if (( | |
485 | - | then [StringEntry(k(), | |
509 | + | let aP = fromBase58String(aO) | |
510 | + | if ((aP == aP)) | |
511 | + | then [StringEntry(k(), aO)] | |
486 | 512 | else throw("Strict value is not equal to itself.") | |
487 | 513 | } | |
488 | 514 | else throw("Strict value is not equal to itself.") | |
490 | 516 | ||
491 | 517 | ||
492 | 518 | ||
493 | - | @Callable( | |
519 | + | @Callable(Y) | |
494 | 520 | func confirmManager () = { | |
495 | - | let | |
496 | - | let | |
521 | + | let aQ = W() | |
522 | + | let aR = if (isDefined(aQ)) | |
497 | 523 | then true | |
498 | 524 | else throw("No pending manager") | |
499 | - | if (( | |
525 | + | if ((aR == aR)) | |
500 | 526 | then { | |
501 | - | let | |
527 | + | let aS = if ((Y.callerPublicKey == value(aQ))) | |
502 | 528 | then true | |
503 | 529 | else throw("You are not pending manager") | |
504 | - | if (( | |
505 | - | then [StringEntry(j(), toBase58String(value( | |
530 | + | if ((aS == aS)) | |
531 | + | then [StringEntry(j(), toBase58String(value(aQ))), DeleteEntry(k())] | |
506 | 532 | else throw("Strict value is not equal to itself.") | |
507 | 533 | } | |
508 | 534 | else throw("Strict value is not equal to itself.") | |
510 | 536 | ||
511 | 537 | ||
512 | 538 | ||
513 | - | @Callable( | |
514 | - | func isVerifiedREADONLY (p) = $Tuple2(nil, | |
539 | + | @Callable(Y) | |
540 | + | func isVerifiedREADONLY (p) = $Tuple2(nil, R(p)) | |
515 | 541 | ||
516 | 542 | ||
517 | - | @Verifier( | |
518 | - | func | |
519 | - | let | |
520 | - | let | |
521 | - | if ($isInstanceOf( | |
543 | + | @Verifier(aT) | |
544 | + | func aU () = { | |
545 | + | let aV = { | |
546 | + | let L = V() | |
547 | + | if ($isInstanceOf(L, "ByteVector")) | |
522 | 548 | then { | |
523 | - | let | |
524 | - | | |
549 | + | let Z = L | |
550 | + | Z | |
525 | 551 | } | |
526 | - | else if ($isInstanceOf( | |
527 | - | then | |
552 | + | else if ($isInstanceOf(L, "Unit")) | |
553 | + | then aT.senderPublicKey | |
528 | 554 | else throw("Match error") | |
529 | 555 | } | |
530 | - | sigVerify( | |
556 | + | sigVerify(aT.bodyBytes, aT.proofs[0], aV) | |
531 | 557 | } | |
532 | 558 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = "__" | |
5 | 5 | ||
6 | 6 | let b = "" | |
7 | 7 | ||
8 | 8 | let c = 2 | |
9 | 9 | ||
10 | 10 | let d = 0 | |
11 | 11 | ||
12 | 12 | let e = "COMMUNITY_VERIFIED" | |
13 | 13 | ||
14 | 14 | let f = "POOLS_LP" | |
15 | 15 | ||
16 | 16 | let g = [e, f] | |
17 | 17 | ||
18 | 18 | func h () = throw("Permission denied") | |
19 | 19 | ||
20 | 20 | ||
21 | 21 | func i () = throw("Asset doesn't exists") | |
22 | 22 | ||
23 | 23 | ||
24 | 24 | func j () = "%s__managerPublicKey" | |
25 | 25 | ||
26 | 26 | ||
27 | 27 | func k () = "%s__pendingManagerPublicKey" | |
28 | 28 | ||
29 | 29 | ||
30 | 30 | func l () = "%s__adminPubKeys" | |
31 | 31 | ||
32 | 32 | ||
33 | 33 | func m () = "%s__userPoolsContract" | |
34 | 34 | ||
35 | 35 | ||
36 | 36 | func n () = "%s__factoryContract" | |
37 | 37 | ||
38 | 38 | ||
39 | 39 | func o (p) = (("created_<" + p) + ">") | |
40 | 40 | ||
41 | 41 | ||
42 | 42 | func q (p) = (("logo_<" + p) + ">") | |
43 | 43 | ||
44 | 44 | ||
45 | 45 | func r (p) = (("ticker_<" + p) + ">") | |
46 | 46 | ||
47 | 47 | ||
48 | 48 | func s (p) = (("status_<" + p) + ">") | |
49 | 49 | ||
50 | 50 | ||
51 | 51 | func t (p) = makeString(["%s%s", "pools", p], a) | |
52 | 52 | ||
53 | 53 | ||
54 | 54 | func u (v) = makeString(["%s%s", "ticker2assetId", v], a) | |
55 | 55 | ||
56 | 56 | ||
57 | 57 | func w (p) = makeString(["%s%s", "assetId2ticker", p], a) | |
58 | 58 | ||
59 | 59 | ||
60 | 60 | func x (y,z) = makeString(["%s%s%s", "amountAndPriceAssetsToLpAsset", y, z], a) | |
61 | 61 | ||
62 | 62 | ||
63 | 63 | func A (B) = makeString(["%s%s", "lpAssetToAmountAndPriceAssets", B], a) | |
64 | 64 | ||
65 | 65 | ||
66 | 66 | func C (p) = makeString(["%s%s", "labels", p], a) | |
67 | 67 | ||
68 | 68 | ||
69 | 69 | func D () = makeString(["%s", "labels"], a) | |
70 | 70 | ||
71 | 71 | ||
72 | - | func E (F,G,H) = { | |
73 | - | let I = makeString(["mandatory ", toString(F), ".", G, " is not defined"], "") | |
72 | + | func E (p) = makeString(["%s%s", "assetName", p], a) | |
73 | + | ||
74 | + | ||
75 | + | func F (p) = makeString(["%s%s", "assetDescription", p], a) | |
76 | + | ||
77 | + | ||
78 | + | func G (H,I,J) = { | |
79 | + | let K = makeString(["mandatory ", toString(H), ".", I, " is not defined"], "") | |
74 | 80 | valueOrErrorMessage({ | |
75 | - | let | |
76 | - | if ($isInstanceOf( | |
81 | + | let L = J | |
82 | + | if ($isInstanceOf(L, "String")) | |
77 | 83 | then { | |
78 | - | let | |
79 | - | getString( | |
84 | + | let M = L | |
85 | + | getString(H, I) | |
80 | 86 | } | |
81 | - | else if ($isInstanceOf( | |
87 | + | else if ($isInstanceOf(L, "Int")) | |
82 | 88 | then { | |
83 | - | let | |
84 | - | getInteger( | |
89 | + | let N = L | |
90 | + | getInteger(H, I) | |
85 | 91 | } | |
86 | 92 | else throw("invalid entry type") | |
87 | - | }, | |
93 | + | }, K) | |
88 | 94 | } | |
89 | 95 | ||
90 | 96 | ||
91 | - | func | |
92 | - | let | |
93 | - | if ($isInstanceOf( | |
94 | - | then | |
97 | + | func O (H,I) = { | |
98 | + | let P = G(H, I, "") | |
99 | + | if ($isInstanceOf(P, "String")) | |
100 | + | then P | |
95 | 101 | else throw("Couldn't cast Int|String to String") | |
96 | 102 | } | |
97 | 103 | ||
98 | 104 | ||
99 | - | func | |
100 | - | let | |
101 | - | if ($isInstanceOf( | |
102 | - | then | |
105 | + | func Q (H,I) = { | |
106 | + | let P = G(H, I, 0) | |
107 | + | if ($isInstanceOf(P, "Int")) | |
108 | + | then P | |
103 | 109 | else throw("Couldn't cast Int|String to Int") | |
104 | 110 | } | |
105 | 111 | ||
106 | 112 | ||
107 | - | func | |
113 | + | func R (p) = (valueOrElse(getInteger(s(p)), d) == c) | |
108 | 114 | ||
109 | 115 | ||
110 | - | func | |
111 | - | let | |
112 | - | if ($isInstanceOf( | |
116 | + | func S () = { | |
117 | + | let L = getString(D()) | |
118 | + | if ($isInstanceOf(L, "String")) | |
113 | 119 | then { | |
114 | - | let | |
115 | - | if ((size( | |
120 | + | let T = L | |
121 | + | if ((size(T) == 0)) | |
116 | 122 | then nil | |
117 | - | else split( | |
123 | + | else split(T, a) | |
118 | 124 | } | |
119 | 125 | else nil | |
120 | 126 | } | |
121 | 127 | ||
122 | 128 | ||
123 | - | func | |
124 | - | let | |
125 | - | if ($isInstanceOf( | |
129 | + | func U (p) = { | |
130 | + | let L = getString(C(p)) | |
131 | + | if ($isInstanceOf(L, "String")) | |
126 | 132 | then { | |
127 | - | let | |
128 | - | if ((size( | |
133 | + | let T = L | |
134 | + | if ((size(T) == 0)) | |
129 | 135 | then nil | |
130 | - | else split( | |
136 | + | else split(T, a) | |
131 | 137 | } | |
132 | 138 | else nil | |
133 | 139 | } | |
134 | 140 | ||
135 | 141 | ||
136 | - | func | |
137 | - | let | |
138 | - | if ($isInstanceOf( | |
142 | + | func V () = { | |
143 | + | let L = getString(j()) | |
144 | + | if ($isInstanceOf(L, "String")) | |
139 | 145 | then { | |
140 | - | let | |
141 | - | fromBase58String( | |
146 | + | let T = L | |
147 | + | fromBase58String(T) | |
142 | 148 | } | |
143 | - | else if ($isInstanceOf( | |
149 | + | else if ($isInstanceOf(L, "Unit")) | |
144 | 150 | then unit | |
145 | 151 | else throw("Match error") | |
146 | 152 | } | |
147 | 153 | ||
148 | 154 | ||
149 | - | func | |
150 | - | let | |
151 | - | if ($isInstanceOf( | |
155 | + | func W () = { | |
156 | + | let L = getString(k()) | |
157 | + | if ($isInstanceOf(L, "String")) | |
152 | 158 | then { | |
153 | - | let | |
154 | - | fromBase58String( | |
159 | + | let T = L | |
160 | + | fromBase58String(T) | |
155 | 161 | } | |
156 | - | else if ($isInstanceOf( | |
162 | + | else if ($isInstanceOf(L, "Unit")) | |
157 | 163 | then unit | |
158 | 164 | else throw("Match error") | |
159 | 165 | } | |
160 | 166 | ||
161 | 167 | ||
162 | - | func | |
163 | - | let | |
164 | - | if ($isInstanceOf( | |
168 | + | func X (Y) = { | |
169 | + | let L = V() | |
170 | + | if ($isInstanceOf(L, "ByteVector")) | |
165 | 171 | then { | |
166 | - | let | |
167 | - | if (( | |
172 | + | let Z = L | |
173 | + | if ((Y.callerPublicKey == Z)) | |
168 | 174 | then true | |
169 | 175 | else h() | |
170 | 176 | } | |
171 | - | else if ($isInstanceOf( | |
172 | - | then if (( | |
177 | + | else if ($isInstanceOf(L, "Unit")) | |
178 | + | then if ((Y.caller == this)) | |
173 | 179 | then true | |
174 | 180 | else h() | |
175 | 181 | else throw("Match error") | |
176 | 182 | } | |
177 | 183 | ||
178 | 184 | ||
179 | - | func | |
180 | - | let | |
181 | - | if (containsElement( | |
185 | + | func aa (Y) = { | |
186 | + | let ab = split(valueOrElse(getString(l()), b), a) | |
187 | + | if (containsElement(ab, toBase58String(Y.callerPublicKey))) | |
182 | 188 | then true | |
183 | 189 | else { | |
184 | - | let | |
185 | - | if (( | |
190 | + | let ac = X(Y) | |
191 | + | if ((ac == ac)) | |
186 | 192 | then true | |
187 | 193 | else throw("Strict value is not equal to itself.") | |
188 | 194 | } | |
189 | 195 | } | |
190 | 196 | ||
191 | 197 | ||
192 | - | func | |
198 | + | func ad (p) = valueOrElse(getBoolean(o(p)), false) | |
193 | 199 | ||
194 | 200 | ||
195 | - | func | |
201 | + | func ae (af) = if (af) | |
196 | 202 | then c | |
197 | 203 | else d | |
198 | 204 | ||
199 | 205 | ||
200 | - | func | |
201 | - | let | |
202 | - | let | |
203 | - | let | |
206 | + | func ag (p,ah,ai) = { | |
207 | + | let aj = S() | |
208 | + | let ak = U(p) | |
209 | + | let al = if (containsElement(aj, ah)) | |
204 | 210 | then true | |
205 | 211 | else throw("Label doesn't exist") | |
206 | - | if (( | |
212 | + | if ((al == al)) | |
207 | 213 | then { | |
208 | - | let | |
209 | - | then if ( | |
214 | + | let am = if (containsElement(ak, ah)) | |
215 | + | then if (ai) | |
210 | 216 | then throw("Label has already been added") | |
211 | - | else | |
212 | - | else ( | |
213 | - | [StringEntry(C(p), makeString( | |
217 | + | else ak | |
218 | + | else (ak :+ ah) | |
219 | + | [StringEntry(C(p), makeString(am, a))] | |
214 | 220 | } | |
215 | 221 | else throw("Strict value is not equal to itself.") | |
216 | 222 | } | |
217 | 223 | ||
218 | 224 | ||
219 | - | func | |
220 | - | let | |
221 | - | let | |
222 | - | then removeByIndex( | |
223 | - | else if ( | |
225 | + | func an (p,ah,ai) = { | |
226 | + | let ak = U(p) | |
227 | + | let am = if (containsElement(ak, ah)) | |
228 | + | then removeByIndex(ak, value(indexOf(ak, ah))) | |
229 | + | else if (ai) | |
224 | 230 | then throw("Label wasn't added") | |
225 | - | else | |
226 | - | [StringEntry(C(p), makeString( | |
231 | + | else ak | |
232 | + | [StringEntry(C(p), makeString(am, a))] | |
227 | 233 | } | |
228 | 234 | ||
229 | 235 | ||
230 | - | func | |
231 | - | let | |
232 | - | then | |
233 | - | else | |
234 | - | ([IntegerEntry(s(p), | |
236 | + | func ao (p,af) = { | |
237 | + | let ap = if (af) | |
238 | + | then ag(p, e, false) | |
239 | + | else an(p, e, false) | |
240 | + | ([IntegerEntry(s(p), ae(af))] ++ ap) | |
235 | 241 | } | |
236 | 242 | ||
237 | 243 | ||
238 | - | func | |
239 | - | let | |
240 | - | let | |
241 | - | let | |
242 | - | then if (( | |
244 | + | func aq (p,v) = { | |
245 | + | let ar = { | |
246 | + | let as = getString(u(v)) | |
247 | + | let at = if ((v != "")) | |
248 | + | then if ((as == unit)) | |
243 | 249 | then true | |
244 | - | else (value( | |
250 | + | else (value(as) == p) | |
245 | 251 | else false | |
246 | - | if ( | |
252 | + | if (at) | |
247 | 253 | then true | |
248 | 254 | else throw("Invalid ticker") | |
249 | 255 | } | |
250 | - | if (( | |
256 | + | if ((ar == ar)) | |
251 | 257 | then [StringEntry(w(p), v), StringEntry(u(v), p)] | |
252 | 258 | else throw("Strict value is not equal to itself.") | |
253 | 259 | } | |
254 | 260 | ||
255 | 261 | ||
256 | - | @Callable(W) | |
257 | - | func constructor (as,ah) = { | |
258 | - | let at = V(W) | |
259 | - | if ((at == at)) | |
262 | + | @Callable(Y) | |
263 | + | func setAssetName (au,av) = { | |
264 | + | let aw = aa(Y) | |
265 | + | if ((aw == aw)) | |
266 | + | then [StringEntry(E(au), av)] | |
267 | + | else throw("Strict value is not equal to itself.") | |
268 | + | } | |
269 | + | ||
270 | + | ||
271 | + | ||
272 | + | @Callable(Y) | |
273 | + | func setAssetDescription (au,ax) = { | |
274 | + | let aw = aa(Y) | |
275 | + | if ((aw == aw)) | |
276 | + | then [StringEntry(F(au), ax)] | |
277 | + | else throw("Strict value is not equal to itself.") | |
278 | + | } | |
279 | + | ||
280 | + | ||
281 | + | ||
282 | + | @Callable(Y) | |
283 | + | func constructor (ay,aj) = { | |
284 | + | let aw = X(Y) | |
285 | + | if ((aw == aw)) | |
260 | 286 | then { | |
261 | - | let | |
262 | - | if (( | |
263 | - | then [StringEntry(m(), | |
287 | + | let az = valueOrErrorMessage(addressFromString(ay), "Invalid address") | |
288 | + | if ((az == az)) | |
289 | + | then [StringEntry(m(), ay), StringEntry(D(), makeString((g ++ aj), a))] | |
264 | 290 | else throw("Strict value is not equal to itself.") | |
265 | 291 | } | |
266 | 292 | else throw("Strict value is not equal to itself.") | |
267 | 293 | } | |
268 | 294 | ||
269 | 295 | ||
270 | 296 | ||
271 | - | @Callable( | |
272 | - | func constructorV2 ( | |
273 | - | let | |
274 | - | if (( | |
297 | + | @Callable(Y) | |
298 | + | func constructorV2 (aA) = { | |
299 | + | let aw = X(Y) | |
300 | + | if ((aw == aw)) | |
275 | 301 | then { | |
276 | - | let | |
277 | - | if (( | |
278 | - | then [StringEntry(n(), | |
302 | + | let aB = valueOrErrorMessage(addressFromString(aA), "invalid factory contract address") | |
303 | + | if ((aB == aB)) | |
304 | + | then [StringEntry(n(), aA)] | |
279 | 305 | else throw("Strict value is not equal to itself.") | |
280 | 306 | } | |
281 | 307 | else throw("Strict value is not equal to itself.") | |
282 | 308 | } | |
283 | 309 | ||
284 | 310 | ||
285 | 311 | ||
286 | - | @Callable( | |
312 | + | @Callable(Y) | |
287 | 313 | func addAssetsLink (y,z,B) = { | |
288 | - | let | |
289 | - | if (( | |
314 | + | let aw = aa(Y) | |
315 | + | if ((aw == aw)) | |
290 | 316 | then [StringEntry(x(y, z), B), StringEntry(A(B), makeString([y, z], a))] | |
291 | 317 | else throw("Strict value is not equal to itself.") | |
292 | 318 | } | |
293 | 319 | ||
294 | 320 | ||
295 | 321 | ||
296 | - | @Callable( | |
322 | + | @Callable(Y) | |
297 | 323 | func increaseAssetPoolsNumber (p) = { | |
298 | - | let | |
299 | - | if (( | |
324 | + | let aw = aa(Y) | |
325 | + | if ((aw == aw)) | |
300 | 326 | then { | |
301 | - | let | |
302 | - | let | |
303 | - | [IntegerEntry( | |
327 | + | let aC = t(p) | |
328 | + | let aD = valueOrElse(getInteger(aC), 0) | |
329 | + | [IntegerEntry(aC, (aD + 1))] | |
304 | 330 | } | |
305 | 331 | else throw("Strict value is not equal to itself.") | |
306 | 332 | } | |
307 | 333 | ||
308 | 334 | ||
309 | 335 | ||
310 | - | @Callable( | |
311 | - | func createLabel ( | |
312 | - | let | |
313 | - | let | |
314 | - | if (( | |
336 | + | @Callable(Y) | |
337 | + | func createLabel (ah) = { | |
338 | + | let aj = S() | |
339 | + | let aw = aa(Y) | |
340 | + | if ((aw == aw)) | |
315 | 341 | then { | |
316 | - | let | |
342 | + | let al = [if (!(contains(ah, a))) | |
317 | 343 | then true | |
318 | - | else throw("Invalid label name"), if (!(containsElement( | |
344 | + | else throw("Invalid label name"), if (!(containsElement(aj, ah))) | |
319 | 345 | then true | |
320 | 346 | else throw("Label exists")] | |
321 | - | if (( | |
322 | - | then [StringEntry(D(), makeString(( | |
347 | + | if ((al == al)) | |
348 | + | then [StringEntry(D(), makeString((aj :+ ah), a))] | |
323 | 349 | else throw("Strict value is not equal to itself.") | |
324 | 350 | } | |
325 | 351 | else throw("Strict value is not equal to itself.") | |
326 | 352 | } | |
327 | 353 | ||
328 | 354 | ||
329 | 355 | ||
330 | - | @Callable( | |
331 | - | func dropLabel ( | |
332 | - | let | |
333 | - | let | |
334 | - | if (( | |
356 | + | @Callable(Y) | |
357 | + | func dropLabel (ah) = { | |
358 | + | let aj = S() | |
359 | + | let aw = X(Y) | |
360 | + | if ((aw == aw)) | |
335 | 361 | then { | |
336 | - | let | |
362 | + | let al = if (containsElement(aj, ah)) | |
337 | 363 | then true | |
338 | 364 | else throw("Label doesn't exist") | |
339 | - | if (( | |
340 | - | then [StringEntry(D(), makeString(removeByIndex( | |
365 | + | if ((al == al)) | |
366 | + | then [StringEntry(D(), makeString(removeByIndex(aj, value(indexOf(aj, ah))), a))] | |
341 | 367 | else throw("Strict value is not equal to itself.") | |
342 | 368 | } | |
343 | 369 | else throw("Strict value is not equal to itself.") | |
344 | 370 | } | |
345 | 371 | ||
346 | 372 | ||
347 | 373 | ||
348 | - | @Callable( | |
349 | - | func addLabel (p, | |
350 | - | let | |
351 | - | if (( | |
352 | - | then | |
374 | + | @Callable(Y) | |
375 | + | func addLabel (p,ah) = { | |
376 | + | let aw = aa(Y) | |
377 | + | if ((aw == aw)) | |
378 | + | then ag(p, ah, true) | |
353 | 379 | else throw("Strict value is not equal to itself.") | |
354 | 380 | } | |
355 | 381 | ||
356 | 382 | ||
357 | 383 | ||
358 | - | @Callable( | |
359 | - | func deleteLabel (p, | |
360 | - | let | |
361 | - | if (( | |
362 | - | then | |
384 | + | @Callable(Y) | |
385 | + | func deleteLabel (p,ah) = { | |
386 | + | let aw = aa(Y) | |
387 | + | if ((aw == aw)) | |
388 | + | then an(p, ah, true) | |
363 | 389 | else throw("Strict value is not equal to itself.") | |
364 | 390 | } | |
365 | 391 | ||
366 | 392 | ||
367 | 393 | ||
368 | - | @Callable( | |
394 | + | @Callable(Y) | |
369 | 395 | func updateTicker (p,v) = { | |
370 | - | let | |
371 | - | if (( | |
396 | + | let aw = aa(Y) | |
397 | + | if ((aw == aw)) | |
372 | 398 | then { | |
373 | - | let | |
399 | + | let aE = if (ad(p)) | |
374 | 400 | then true | |
375 | 401 | else i() | |
376 | - | if (( | |
377 | - | then | |
402 | + | if ((aE == aE)) | |
403 | + | then aq(p, v) | |
378 | 404 | else throw("Strict value is not equal to itself.") | |
379 | 405 | } | |
380 | 406 | else throw("Strict value is not equal to itself.") | |
381 | 407 | } | |
382 | 408 | ||
383 | 409 | ||
384 | 410 | ||
385 | - | @Callable( | |
411 | + | @Callable(Y) | |
386 | 412 | func deleteTicker (p) = { | |
387 | - | let | |
388 | - | if (( | |
413 | + | let aw = aa(Y) | |
414 | + | if ((aw == aw)) | |
389 | 415 | then { | |
390 | 416 | let v = valueOrErrorMessage(getString(w(p)), "Invalid asset") | |
391 | 417 | [DeleteEntry(w(p)), DeleteEntry(u(v))] | |
392 | 418 | } | |
393 | 419 | else throw("Strict value is not equal to itself.") | |
394 | 420 | } | |
395 | 421 | ||
396 | 422 | ||
397 | 423 | ||
398 | - | @Callable( | |
399 | - | func createOrUpdate (p, | |
400 | - | let | |
401 | - | if (( | |
424 | + | @Callable(Y) | |
425 | + | func createOrUpdate (p,aF,af) = { | |
426 | + | let aw = aa(Y) | |
427 | + | if ((aw == aw)) | |
402 | 428 | then { | |
403 | - | let | |
404 | - | if (( | |
429 | + | let aG = !(ad(p)) | |
430 | + | if ((aG == aG)) | |
405 | 431 | then { | |
406 | - | let | |
432 | + | let aH = if ((aF == "")) | |
407 | 433 | then nil | |
408 | - | else [StringEntry(q(p), | |
409 | - | $Tuple2((([BooleanEntry(o(p), true)] ++ | |
434 | + | else [StringEntry(q(p), aF)] | |
435 | + | $Tuple2((([BooleanEntry(o(p), true)] ++ aH) ++ ao(p, af)), aG) | |
410 | 436 | } | |
411 | 437 | else throw("Strict value is not equal to itself.") | |
412 | 438 | } | |
413 | 439 | else throw("Strict value is not equal to itself.") | |
414 | 440 | } | |
415 | 441 | ||
416 | 442 | ||
417 | 443 | ||
418 | - | @Callable( | |
419 | - | func setLogo (p, | |
420 | - | let | |
444 | + | @Callable(Y) | |
445 | + | func setLogo (p,aF) = { | |
446 | + | let aI = [aa(Y), if (ad(p)) | |
421 | 447 | then true | |
422 | 448 | else i()] | |
423 | - | if (( | |
449 | + | if ((aI == aI)) | |
424 | 450 | then { | |
425 | - | let | |
451 | + | let aJ = if ((aF == "")) | |
426 | 452 | then DeleteEntry(q(p)) | |
427 | - | else StringEntry(q(p), | |
428 | - | [ | |
453 | + | else StringEntry(q(p), aF) | |
454 | + | [aJ] | |
429 | 455 | } | |
430 | 456 | else throw("Strict value is not equal to itself.") | |
431 | 457 | } | |
432 | 458 | ||
433 | 459 | ||
434 | 460 | ||
435 | - | @Callable( | |
436 | - | func setVerified (p, | |
437 | - | let | |
461 | + | @Callable(Y) | |
462 | + | func setVerified (p,af) = { | |
463 | + | let aI = [aa(Y), if (ad(p)) | |
438 | 464 | then true | |
439 | 465 | else i()] | |
440 | - | if (( | |
466 | + | if ((aI == aI)) | |
441 | 467 | then { | |
442 | - | let | |
468 | + | let aK = if (!(af)) | |
443 | 469 | then { | |
444 | - | let | |
445 | - | invoke( | |
470 | + | let aA = valueOrErrorMessage(addressFromString(O(this, n())), "invalid factory contract address") | |
471 | + | invoke(aA, "onVerificationLoss", [p], nil) | |
446 | 472 | } | |
447 | 473 | else unit | |
448 | - | if (( | |
449 | - | then $Tuple2( | |
474 | + | if ((aK == aK)) | |
475 | + | then $Tuple2(ao(p, af), unit) | |
450 | 476 | else throw("Strict value is not equal to itself.") | |
451 | 477 | } | |
452 | 478 | else throw("Strict value is not equal to itself.") | |
453 | 479 | } | |
454 | 480 | ||
455 | 481 | ||
456 | 482 | ||
457 | - | @Callable( | |
483 | + | @Callable(Y) | |
458 | 484 | func onEliminate (p) = { | |
459 | - | let | |
460 | - | let | |
485 | + | let aL = valueOrElse(getInteger(t(p)), 0) | |
486 | + | let aM = if ((aL > 0)) | |
461 | 487 | then nil | |
462 | 488 | else [DeleteEntry(q(p))] | |
463 | - | $Tuple2( | |
489 | + | $Tuple2(aM, unit) | |
464 | 490 | } | |
465 | 491 | ||
466 | 492 | ||
467 | 493 | ||
468 | - | @Callable( | |
469 | - | func setAdmins ( | |
470 | - | let | |
471 | - | if (( | |
472 | - | then [StringEntry(l(), makeString( | |
494 | + | @Callable(Y) | |
495 | + | func setAdmins (aN) = { | |
496 | + | let aw = X(Y) | |
497 | + | if ((aw == aw)) | |
498 | + | then [StringEntry(l(), makeString(aN, a))] | |
473 | 499 | else throw("Strict value is not equal to itself.") | |
474 | 500 | } | |
475 | 501 | ||
476 | 502 | ||
477 | 503 | ||
478 | - | @Callable( | |
479 | - | func setManager ( | |
480 | - | let | |
481 | - | if (( | |
504 | + | @Callable(Y) | |
505 | + | func setManager (aO) = { | |
506 | + | let aw = X(Y) | |
507 | + | if ((aw == aw)) | |
482 | 508 | then { | |
483 | - | let | |
484 | - | if (( | |
485 | - | then [StringEntry(k(), | |
509 | + | let aP = fromBase58String(aO) | |
510 | + | if ((aP == aP)) | |
511 | + | then [StringEntry(k(), aO)] | |
486 | 512 | else throw("Strict value is not equal to itself.") | |
487 | 513 | } | |
488 | 514 | else throw("Strict value is not equal to itself.") | |
489 | 515 | } | |
490 | 516 | ||
491 | 517 | ||
492 | 518 | ||
493 | - | @Callable( | |
519 | + | @Callable(Y) | |
494 | 520 | func confirmManager () = { | |
495 | - | let | |
496 | - | let | |
521 | + | let aQ = W() | |
522 | + | let aR = if (isDefined(aQ)) | |
497 | 523 | then true | |
498 | 524 | else throw("No pending manager") | |
499 | - | if (( | |
525 | + | if ((aR == aR)) | |
500 | 526 | then { | |
501 | - | let | |
527 | + | let aS = if ((Y.callerPublicKey == value(aQ))) | |
502 | 528 | then true | |
503 | 529 | else throw("You are not pending manager") | |
504 | - | if (( | |
505 | - | then [StringEntry(j(), toBase58String(value( | |
530 | + | if ((aS == aS)) | |
531 | + | then [StringEntry(j(), toBase58String(value(aQ))), DeleteEntry(k())] | |
506 | 532 | else throw("Strict value is not equal to itself.") | |
507 | 533 | } | |
508 | 534 | else throw("Strict value is not equal to itself.") | |
509 | 535 | } | |
510 | 536 | ||
511 | 537 | ||
512 | 538 | ||
513 | - | @Callable( | |
514 | - | func isVerifiedREADONLY (p) = $Tuple2(nil, | |
539 | + | @Callable(Y) | |
540 | + | func isVerifiedREADONLY (p) = $Tuple2(nil, R(p)) | |
515 | 541 | ||
516 | 542 | ||
517 | - | @Verifier( | |
518 | - | func | |
519 | - | let | |
520 | - | let | |
521 | - | if ($isInstanceOf( | |
543 | + | @Verifier(aT) | |
544 | + | func aU () = { | |
545 | + | let aV = { | |
546 | + | let L = V() | |
547 | + | if ($isInstanceOf(L, "ByteVector")) | |
522 | 548 | then { | |
523 | - | let | |
524 | - | | |
549 | + | let Z = L | |
550 | + | Z | |
525 | 551 | } | |
526 | - | else if ($isInstanceOf( | |
527 | - | then | |
552 | + | else if ($isInstanceOf(L, "Unit")) | |
553 | + | then aT.senderPublicKey | |
528 | 554 | else throw("Match error") | |
529 | 555 | } | |
530 | - | sigVerify( | |
556 | + | sigVerify(aT.bodyBytes, aT.proofs[0], aV) | |
531 | 557 | } | |
532 | 558 |
github/deemru/w8io/169f3d6 137.58 ms ◑