tx · 2JBKEPB1sHgtHKc63BdhaWfeBUgpUmUayN1x3JYBpCRX

3N8b7mamWRbw6YjYJgsNGzTsKAbsbf4zVSA:  -0.03000000 Waves

2022.07.09 20:47 [2132485] smart account 3N8b7mamWRbw6YjYJgsNGzTsKAbsbf4zVSA > SELF 0.00000000 Waves

{ "type": 13, "id": "2JBKEPB1sHgtHKc63BdhaWfeBUgpUmUayN1x3JYBpCRX", "fee": 3000000, "feeAssetId": null, "timestamp": 1657388925241, "version": 2, "chainId": 84, "sender": "3N8b7mamWRbw6YjYJgsNGzTsKAbsbf4zVSA", "senderPublicKey": "FA2TFZp55AkfpLAK7toKNNdufbHH3cY6aCSSMFcFPafT", "proofs": [ "3YmSXcwh8jm22xbXyusSRRzZNNFm9CjPqz1Z2JVajYHYDzpLWrpwdZadF6QPDnNmSBdb6Pjn3wBto18hmcZm55Qi" ], "script": "base64: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V0FWRVMHAwUAAAAHYWNXYXZlcwYJAAACAAAAAQIAAAA0VGhlIHNtYXJ0IGNvbnRyYWN0IGRvZXMgbm90IGN1cnJlbnRseSBzdXBwb3J0IFdhdmVzLgMJAAAAAAAAAgUAAAAGYXNzZXRTCQACWQAAAAEFAAAAC3N0cmluZ0Fzc2V0BgcAAAANAAAAAWkBAAAAC2NvbnN0cnVjdG9yAAAACQAAAAtNYWluQXNzZXRJZAAAAAtVc2RuQXNzZXRJZAAAAAtVc2R0QXNzZXRJZAAAAAtVc2RjQXNzZXRJZAAAAAtOZ25uQXNzZXRJZAAAAAtFdXJuQXNzZXRJZAAAABJwZXJjZW50YWdlUmF0ZVN3YXAAAAARYmxvY2tEaXN0cmlidXRpb24AAAALYWNjZXB0V2F2ZXMDAwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGCQAAAAAAAAIIBQAAAAFpAAAABmNhbGxlcgkBAAAAEWFkbWluVmVyaWZpY2F0aW9uAAAAAAQAAAAPa2V5UG9vbFVzZG5Vc2R0CQEAAAACa3AAAAACBQAAAAtVc2RuQXNzZXRJZAUAAAALVXNkdEFzc2V0SWQEAAAAD2tleVBvb2xVc2RuVXNkYwkBAAAAAmtwAAAAAgUAAAALVXNkbkFzc2V0SWQFAAAAC1VzZGNBc3NldElkBAAAAA9rZXlQb29sVXNkbk5nbm4JAQAAAAJrcAAAAAIFAAAAC1VzZG5Bc3NldElkBQAAAAtOZ25uQXNzZXRJZAQAAAAQa2V5UG9vbFVzZG5XYXZlcwkBAAAAAmtwAAAAAgUAAAALVXNkbkFzc2V0SWQFAAAABXdhdmVzBAAAABRrZXlQb29sVXNkbk1haW5Bc3NldAkBAAAAAmtwAAAAAgUAAAALVXNkbkFzc2V0SWQFAAAAC01haW5Bc3NldElkBAAAAA9rZXlQb29sVXNkbkV1cm4JAQAAAAJrcAAAAAIFAAAAC1VzZG5Bc3NldElkBQAAAAtFdXJuQXNzZXRJZAQAAAAPa2V5UG9vbFVzZGNVc2R0CQEAAAACa3AAAAACBQAAAAtVc2RjQXNzZXRJZAUAAAALVXNkdEFzc2V0SWQEAAAAD2tleVBvb2xVc2RjTmdubgkBAAAAAmtwAAAAAgUAAAALVXNkY0Fzc2V0SWQFAAAAC05nbm5Bc3NldElkBAAAABBrZXlQb29sVXNkY1dhdmVzCQEAAAACa3AAAAACBQAAAAtVc2RjQXNzZXRJZAUAAAAFd2F2ZXMEAAAAFGtleVBvb2xVc2RjTWFpbkFzc2V0CQEAAAACa3AAAAACBQAAAAtVc2RjQXNzZXRJZAUAAAALTWFpbkFzc2V0SWQEAAAAD2tleVBvb2xVc2RjRXVybgkBAAAAAmtwAAAAAgUAAAALVXNkY0Fzc2V0SWQFAAAAC0V1cm5Bc3NldElkBAAAAA9rZXlQb29sVXNkdE5nbm4JAQAAAAJrcAAAAAIFAAAAC1VzZHRBc3NldElkBQAAAAtOZ25uQXNzZXRJZAQAAAAQa2V5UG9vbFVzZHRXYXZlcwkBAAAAAmtwAAAAAgUAAAALVXNkdEFzc2V0SWQFAAAABXdhdmVzBAAAABRrZXlQb29sVXNkdE1haW5Bc3NldAkBAAAAAmtwAAAAAgUAAAALVXNkdEFzc2V0SWQFAAAAC01haW5Bc3NldElkBAAAAA9rZXlQb29sVXNkdEV1cm4JAQAAAAJrcAAAAAIFAAAAC1VzZHRBc3NldElkBQAAAAtFdXJuQXNzZXRJZAQAAAAQa2V5UG9vbE5nbm5XYXZlcwkBAAAAAmtwAAAAAgUAAAALTmdubkFzc2V0SWQFAAAABXdhdmVzBAAAABRrZXlQb29sTmdubk1haW5Bc3NldAkBAAAAAmtwAAAAAgUAAAALTmdubkFzc2V0SWQFAAAAC01haW5Bc3NldElkBAAAAA9rZXlQb29sTmdubkV1cm4JAQAAAAJrcAAAAAIFAAAAC05nbm5Bc3NldElkBQAAAAtFdXJuQXNzZXRJZAQAAAAQa2V5UG9vbE1haW5XYXZlcwkBAAAAAmtwAAAAAgUAAAALTWFpbkFzc2V0SWQFAAAABXdhdmVzBAAAAA9rZXlQb29sTWFpbkV1cm4JAQAAAAJrcAAAAAIFAAAAC01haW5Bc3NldElkBQAAAAtFdXJuQXNzZXRJZAQAAAAQa2V5UG9vbEV1cm5XYXZlcwkBAAAAAmtwAAAAAgUAAAALRXVybkFzc2V0SWQFAAAABXdhdmVzCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAABG1haW4FAAAAC01haW5Bc3NldElkCQAETAAAAAIJAQAAAAtT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Uk4HAwkBAAAAASEAAAABCQAAAAAAAAIFAAAAA2tleQAAAAAAAAAAAAMJAQAAAAEhAAAAAQkAAAAAAAACBQAAAA1jdXJyZW50QW1vdW50AAAAAAAAAAAAAwkAAGcAAAACCQAAZQAAAAIFAAAADWN1cnJlbnRBbW91bnQFAAAAD2Ftb3VudExwQmxvY2tlZAUAAAAGQW1vdW50BAAAAAZjYWxjTFAJAABpAAAAAgUAAAAGQW1vdW50BQAAAAd0b3RhbExQBAAAAA1yZWNlaXZlQXNzZXQxCQAAaAAAAAIFAAAABmNhbGNMUAUAAAAPdG90YWxBc3NldDFQb29sBAAAAA1yZWNlaXZlQXNzZXQyCQAAaAAAAAIFAAAABmNhbGNMUAUAAAAPdG90YWxBc3NldDJQb29sBAAAAAphc3NldDFwb29sCQEAAAAGYXNzZXRQAAAAAgkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDIFAAAABkFzc2V0MQQAAAAKYXNzZXQycG9vbAkBAAAABmFzc2V0UAAAAAIJAQAAAAJrcAAAAAIFAAAABkFzc2V0MQUAAAAGQXNzZXQyBQAAAAZBc3NldDIEAAAAE2N1cnJlbnRBbW91bnRBc3NldDEJAQAAAAZwb29sQUEAAAADBQAAAApjdXJyZW50S2V5CQEAAAACa3AAAAACBQAAAAZBc3NldDEFAAAABkFzc2V0MgUAAAAGQXNzZXQxBAAAABNjdXJyZW50QW1vdW50QXNzZXQyCQEAAAAGcG9vbEFBAAAAAwUAAAAKY3VycmVudEtleQkBAAAAAmtwAAAAAgUAAAAGQXNzZXQxBQAAAAZBc3NldDIFAAAABkFzc2V0MgQAAAAWbmV3Y3VycmVudEFtb3VudEFzc2V0MQkAAGUAAAACBQAAABNjdXJyZW50QW1vdW50QXNzZXQxBQAAAA1yZWNlaXZlQXNzZXQxBAAAABZuZXdjdXJyZW50QW1vdW50QXNzZXQyCQAAZQAAAAIFAAAAE2N1cnJlbnRBbW91bnRBc3NldDIFAAAADXJlY2VpdmVBc3NldDIEAAAAEG5ld2N1cnJlbnRBbW91bnQJAABlAAAAAgUAAAANY3VycmVudEFtb3VudAUAAAAGQW1vdW50BAAAAA1uZXdhc3NldDFwb29sCQAAZQAAAAIF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", "height": 2132485, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: DH4pBApSyMTd928Fgxrh9puS37y8DtQuzi5eyXd1AHwA Next: 4pFNkRehMPcRDvbzATTJSe2u8B9qsyNAG2HpVJ2zCUAF Diff:
OldNewDifferences
7979 func L (M) = valueOrElse(getInteger(this, M), 0)
8080
8181
82-func N (n,M) = valueOrElse(getIntegerValue(this, ((M + "_") + n)), 0)
82+func N (n,M) = {
83+ let s = getIntegerValue(this, ((M + "_") + n))
84+ if ($isInstanceOf(s, "Int"))
85+ then {
86+ let O = s
87+ O
88+ }
89+ else 0
90+ }
8391
8492
85-func O (n,M,t) = valueOrElse(getIntegerValue(this, ((((M + "_") + n) + "_") + t)), 1)
93+func P (n,M,t) = valueOrElse(getIntegerValue(this, ((((M + "_") + n) + "_") + t)), 1)
8694
8795
88-func P (M,t) = valueOrElse(getIntegerValue(this, ((M + "_") + t)), 1)
96+func Q (M,t) = valueOrElse(getIntegerValue(this, ((M + "_") + t)), 1)
8997
9098
91-func Q (R,S,n) = (((h + I(R, S)) + "_") + n)
99+func R (S,T,n) = (((h + I(S, T)) + "_") + n)
92100
93101
94-func T (n,M) = valueOrElse(getIntegerValue(this, ((("STAKE_LP_" + n) + "_") + M)), 0)
102+func U (n,M) = valueOrElse(getIntegerValue(this, ((("STAKE_LP_" + n) + "_") + M)), 0)
95103
96104
97-func U () = {
105+func V () = {
98106 let s = getStringValue(this, "admin")
99107 if ($isInstanceOf(s, "String"))
100108 then {
101- let V = s
102- Address(fromBase58String(V))
109+ let O = s
110+ Address(fromBase58String(O))
103111 }
104112 else this
105113 }
119127 @Callable(aa)
120128 func constructor (ab,ac,ad,ae,af,ag,ah,ai,aj) = if (if ((aa.caller == this))
121129 then true
122- else (aa.caller == U()))
130+ else (aa.caller == V()))
123131 then {
124132 let ak = I(ac, ad)
125133 let al = I(ac, ae)
151159 @Callable(aa)
152160 func activate (aF) = if (if ((aa.caller == this))
153161 then true
154- else (aa.caller == U()))
162+ else (aa.caller == V()))
155163 then [BooleanEntry(u, aF)]
156164 else throw("Only the Admin itself can invoke this function")
157165
160168 @Callable(aa)
161169 func maintenance (aG,aH,aI) = if (if ((aa.caller == this))
162170 then true
163- else (aa.caller == U()))
171+ else (aa.caller == V()))
164172 then [BooleanEntry(v, aG), BooleanEntry(w, aH), BooleanEntry(x, aI)]
165173 else throw("Only the Admin itself can invoke this function")
166174
169177 @Callable(aa)
170178 func percentualRateFeeSwapEdit (aJ) = if (if ((aa.caller == this))
171179 then true
172- else (aa.caller == U()))
180+ else (aa.caller == V()))
173181 then [IntegerEntry(g, aJ)]
174182 else throw("Only the Admin itself can invoke this function")
175183
178186 @Callable(aa)
179187 func acceptWaves (aK) = if (if ((aa.caller == this))
180188 then true
181- else (aa.caller == U()))
189+ else (aa.caller == V()))
182190 then [BooleanEntry(G, aK)]
183191 else throw("Only the Admin itself can invoke this function")
184192
187195 @Callable(aa)
188196 func blockDistribution (aL) = if (if ((aa.caller == this))
189197 then true
190- else (aa.caller == U()))
198+ else (aa.caller == V()))
191199 then [IntegerEntry(y, aL)]
192200 else throw("Only the Admin itself can invoke this function")
193201
196204 @Callable(aa)
197205 func addAdmin (n) = if (if ((aa.caller == this))
198206 then true
199- else (aa.caller == U()))
207+ else (aa.caller == V()))
200208 then [StringEntry("admin", n)]
201209 else throw("Only the Admin itself can invoke this function")
202210
216224 let M = L(I(J, K))
217225 if (if ((aa.caller == this))
218226 then true
219- else (aa.caller == U()))
227+ else (aa.caller == V()))
220228 then if (!((M == 0)))
221229 then {
222230 let aR = Issue(aQ, ((("LP asset for pool liquidity in AxAi Swap pair " + J) + "_") + K), 1, 8, true)
230238
231239
232240 @Callable(aa)
233-func deposit (aT,R,S) = {
241+func deposit (aT,S,T) = {
234242 let aU = getBooleanValue(this, u)
235243 let aV = getBooleanValue(this, x)
236244 let aW = getStringValue(this, a)
237245 let aX = if (aT)
238- then getStringValue(this, (b + I(R, S)))
246+ then getStringValue(this, (b + I(S, T)))
239247 else aW
240248 if (aU)
241249 then if (!(aV))
270278 [bc, bd, bg]
271279 }
272280 else {
273- let bh = I(R, S)
281+ let bh = I(S, T)
274282 let M = L(bh)
275283 if (!((M == 0)))
276284 then {
309317
310318
311319 @Callable(aa)
312-func remove (aT,R,S,bi) = {
320+func remove (aT,S,T,bi) = {
313321 let aU = getBooleanValue(this, u)
314322 let aV = getBooleanValue(this, x)
315323 let bj = aa.payments[0]
319327 then {
320328 let aY = toBase58String(aa.caller.bytes)
321329 let aZ = valueOrElse(if (aT)
322- then getIntegerValue(this, ((("STAKE_LP_" + aY) + "_") + I(R, S)))
330+ then getIntegerValue(this, ((("STAKE_LP_" + aY) + "_") + I(S, T)))
323331 else getInteger(this, aY), 0)
324332 let bk = if (aT)
325- then ((((h + "_") + aY) + "_") + I(R, S))
333+ then ((((h + "_") + aY) + "_") + I(S, T))
326334 else (h + aY)
327335 let be = if (aT)
328- then getIntegerValue(this, ("Total_Tokens_LP_Locked_" + I(R, S)))
336+ then getIntegerValue(this, ("Total_Tokens_LP_Locked_" + I(S, T)))
329337 else getIntegerValue(this, "Total_Tokens_Locked:")
330338 let bf = (be - bi)
331339 let bl = (height - getIntegerValue(this, bk))
334342 let bo = (bn / (be / bi))
335343 if ((0 > bi))
336344 then throw(if (aT)
337- then (((("Can't withdraw negative " + R) + "/") + S) + " amount")
345+ then (((("Can't withdraw negative " + S) + "/") + T) + " amount")
338346 else "Can't withdraw negative AxAi amount")
339347 else {
340348 let bb = (aZ - bi)
341349 if ((0 > bb))
342350 then throw(if (aT)
343- then (((("Not enough Asset Lp " + R) + "/") + S) + " balance")
351+ then (((("Not enough Asset Lp " + S) + "/") + T) + " balance")
344352 else "Not enough AxAi balance")
345353 else [IntegerEntry(if (aT)
346- then ((("STAKE_LP_" + aY) + "_") + I(R, S))
354+ then ((("STAKE_LP_" + aY) + "_") + I(S, T))
347355 else aY, bb), IntegerEntry(if (aT)
348- then ("Total_Tokens_LP_Locked_" + I(R, S))
356+ then ("Total_Tokens_LP_Locked_" + I(S, T))
349357 else "Total_Tokens_Locked:", bf), ScriptTransfer(aa.caller, bi, if (aT)
350- then fromBase58String(getStringValue(this, (b + I(R, S))))
358+ then fromBase58String(getStringValue(this, (b + I(S, T))))
351359 else aW), ScriptTransfer(aa.caller, bo, aW)]
352360 }
353361 }
358366
359367
360368 @Callable(aa)
361-func addLiquidity (R,S) = {
369+func addLiquidity (S,T) = {
362370 let aU = getBooleanValue(this, u)
363371 let bp = getBooleanValue(this, v)
364372 let Z = getBooleanValue(this, G)
365- let M = L(I(R, S))
373+ let M = L(I(S, T))
366374 let J = aa.payments[0].assetId
367375 let K = aa.payments[1].assetId
368376 let bq = fromBase58String(getStringValue(this, A))
371379 let bt = fromBase58String(getStringValue(this, D))
372380 let bu = fromBase58String(getStringValue(this, E))
373381 let aW = fromBase58String(getStringValue(this, a))
374- let aX = getStringValue(this, (b + I(R, S)))
382+ let aX = getStringValue(this, (b + I(S, T)))
375383 if (aU)
376384 then if (!(bp))
377385 then if (if (if (!((J == K)))
378- then W(J, R, Z)
386+ then W(J, S, Z)
379387 else false)
380- then W(K, S, Z)
388+ then W(K, T, Z)
381389 else false)
382390 then if (if (if (if (if (if (if (if ((J == bq))
383391 then true
409417 then if (!((M == 0)))
410418 then {
411419 let aY = toBase58String(aa.caller.bytes)
412- let aZ = N(aY, I(R, S))
413- let bv = O(aY, I(R, S), R)
414- let bw = O(aY, I(R, S), S)
415- let bx = P(I(R, S), R)
416- let by = P(I(R, S), S)
420+ let aZ = N(aY, I(S, T))
421+ let bv = P(aY, I(S, T), S)
422+ let bw = P(aY, I(S, T), T)
423+ let bx = Q(I(S, T), S)
424+ let by = Q(I(S, T), T)
417425 let bz = (bx / by)
418426 let bA = (bv + aa.payments[0].amount)
419427 let bB = (bw + aa.payments[1].amount)
420428 let bC = (aZ + bz)
421429 let bD = (bx + aa.payments[0].amount)
422430 let bE = (by + aa.payments[1].amount)
423-[Reissue(fromBase58String(aX), bz, true), ScriptTransfer(Address(aa.caller.bytes), bz, fromBase58String(aX)), IntegerEntry(Q(R, S, aY), height), IntegerEntry(((((aY + "_") + I(R, S)) + "_") + R), bA), IntegerEntry(((((aY + "_") + I(R, S)) + "_") + S), bB), IntegerEntry(((I(R, S) + "_") + aY), bC), IntegerEntry(((I(R, S) + "_") + R), bD), IntegerEntry(((I(R, S) + "_") + S), bE), IntegerEntry(R, (q(R) + aa.payments[0].amount)), IntegerEntry(S, (q(S) + aa.payments[1].amount)), IntegerEntry(aX, (q(aX) + bz))]
431+[Reissue(fromBase58String(aX), bz, true), ScriptTransfer(Address(aa.caller.bytes), bz, fromBase58String(aX)), IntegerEntry(R(S, T, aY), height), IntegerEntry(((((aY + "_") + I(S, T)) + "_") + S), bA), IntegerEntry(((((aY + "_") + I(S, T)) + "_") + T), bB), IntegerEntry(((I(S, T) + "_") + aY), bC), IntegerEntry(((I(S, T) + "_") + S), bD), IntegerEntry(((I(S, T) + "_") + T), bE), IntegerEntry(S, (q(S) + aa.payments[0].amount)), IntegerEntry(T, (q(T) + aa.payments[1].amount)), IntegerEntry(aX, (q(aX) + bz))]
424432 }
425433 else throw("Invalid Pool Key.")
426434 else throw(((("Invalid Asset1 or Asset2! Asset1: " + toString(if (if (if (if (if (if ((J == bq))
456464
457465
458466 @Callable(aa)
459-func removeLiquidity (R,S,bF) = {
467+func removeLiquidity (S,T,bF) = {
460468 let aY = toBase58String(aa.caller.bytes)
461469 let aU = getBooleanValue(this, u)
462470 let bp = getBooleanValue(this, v)
463471 let Z = getBooleanValue(this, G)
464- let bh = I(R, S)
472+ let bh = I(S, T)
465473 let M = L(bh)
466- let J = if ((R == F))
467- then if (Z)
468- then H
469- else throw("The smart contract does not currently support Waves.")
470- else fromBase58String(R)
471- let K = if ((S == F))
474+ let J = if ((S == F))
472475 then if (Z)
473476 then H
474477 else throw("The smart contract does not currently support Waves.")
475478 else fromBase58String(S)
479+ let K = if ((T == F))
480+ then if (Z)
481+ then H
482+ else throw("The smart contract does not currently support Waves.")
483+ else fromBase58String(T)
476484 let bq = fromBase58String(getStringValue(this, A))
477485 let br = fromBase58String(getStringValue(this, C))
478486 let bs = fromBase58String(getStringValue(this, B))
479487 let bt = fromBase58String(getStringValue(this, D))
480488 let aW = fromBase58String(getStringValue(this, a))
481489 let bu = fromBase58String(getStringValue(this, E))
482- let aX = getStringValue(this, (b + I(R, S)))
483- let aZ = N(aY, I(R, S))
484- let bG = T(aY, bh)
490+ let aX = getStringValue(this, (b + I(S, T)))
491+ let aZ = N(aY, I(S, T))
492+ let bG = U(aY, bh)
485493 let bH = getIntegerValue(this, aX)
486- let bI = getIntegerValue(this, ((I(R, S) + "_") + R))
487- let bJ = getIntegerValue(this, ((I(R, S) + "_") + S))
494+ let bI = getIntegerValue(this, ((I(S, T) + "_") + S))
495+ let bJ = getIntegerValue(this, ((I(S, T) + "_") + T))
488496 if (aU)
489497 then if (!(bp))
490- then if (!((R == S)))
498+ then if (!((S == T)))
491499 then if (if (if (if (if (if (if (if ((J == bq))
492500 then true
493501 else (J == br))
522530 let bK = (bF / bH)
523531 let bL = (bK * bI)
524532 let bM = (bK * bJ)
525- let bx = P(I(R, S), R)
526- let by = P(I(R, S), S)
527- let bv = O(aY, I(R, S), R)
528- let bw = O(aY, I(R, S), S)
533+ let bx = Q(I(S, T), S)
534+ let by = Q(I(S, T), T)
535+ let bv = P(aY, I(S, T), S)
536+ let bw = P(aY, I(S, T), T)
529537 let bA = (bv - bL)
530538 let bB = (bw - bM)
531539 let bC = (aZ - bF)
532540 let bD = (bx - bL)
533541 let bE = (by - bM)
534-[Burn(fromBase58String(aX), bF), ScriptTransfer(Address(aa.caller.bytes), bL, J), ScriptTransfer(Address(aa.caller.bytes), bM, K), IntegerEntry(Q(R, S, aY), height), IntegerEntry(((((aY + "_") + I(R, S)) + "_") + R), bA), IntegerEntry(((((aY + "_") + I(R, S)) + "_") + S), bB), IntegerEntry(((I(R, S) + "_") + aY), bC), IntegerEntry(((I(R, S) + "_") + R), bD), IntegerEntry(((I(R, S) + "_") + S), bE), IntegerEntry(R, (q(R) - bL)), IntegerEntry(S, (q(S) - bM)), IntegerEntry(aX, (q(aX) - bF))]
542+[Burn(fromBase58String(aX), bF), ScriptTransfer(Address(aa.caller.bytes), bL, J), ScriptTransfer(Address(aa.caller.bytes), bM, K), IntegerEntry(R(S, T, aY), height), IntegerEntry(((((aY + "_") + I(S, T)) + "_") + S), bA), IntegerEntry(((((aY + "_") + I(S, T)) + "_") + T), bB), IntegerEntry(((I(S, T) + "_") + aY), bC), IntegerEntry(((I(S, T) + "_") + S), bD), IntegerEntry(((I(S, T) + "_") + T), bE), IntegerEntry(S, (q(S) - bL)), IntegerEntry(T, (q(T) - bM)), IntegerEntry(aX, (q(aX) - bF))]
535543 }
536544 else throw("Amount to be withdrawn greater than the amount available for withdrawal.")
537545 else throw("You have no locked values ​​in the pool")
545553
546554
547555 @Callable(aa)
548-func swap (R,S) = {
556+func swap (S,T) = {
549557 let aY = toBase58String(aa.caller.bytes)
550558 let Z = getBooleanValue(this, G)
551559 let aU = getBooleanValue(this, u)
552560 let bN = getBooleanValue(this, w)
553- let bh = I(R, S)
561+ let bh = I(S, T)
554562 let M = L(bh)
555563 let J = aa.payments[0].assetId
556564 let bq = fromBase58String(getStringValue(this, A))
559567 let bt = fromBase58String(getStringValue(this, D))
560568 let aW = fromBase58String(getStringValue(this, a))
561569 let bu = fromBase58String(getStringValue(this, E))
562- let bO = getIntegerValue(this, ((I(R, S) + "_") + R))
563- let bP = getIntegerValue(this, ((I(R, S) + "_") + S))
570+ let bO = getIntegerValue(this, ((I(S, T) + "_") + S))
571+ let bP = getIntegerValue(this, ((I(S, T) + "_") + T))
564572 let bQ = getIntegerValue(this, g)
565573 if (aU)
566574 then if (!(bN))
567- then if (if (!((R == S)))
568- then if (W(J, R, Z))
575+ then if (if (!((S == T)))
576+ then if (W(J, S, Z))
569577 then true
570- else W(J, S, Z)
578+ else W(J, T, Z)
571579 else false)
572580 then if (if (if (if (if (if (if ((J == bq))
573581 then true
586594 then if ((aa.payments[1].assetId == aW))
587595 then if ((aa.payments[1].amount == 300000))
588596 then {
589- let bR = if (!((J == fromBase58String(R))))
597+ let bR = if (!((J == fromBase58String(S))))
590598 then (bO / bP)
591599 else (bP / bO)
592600 let aL = (aa.payments[0].amount - ((aa.payments[0].amount * bQ) / (100 * i)))
593601 let bS = (aL * bR)
594-[ScriptTransfer(Address(aa.caller.bytes), bS, if ((S == F))
602+[ScriptTransfer(Address(aa.caller.bytes), bS, if ((T == F))
595603 then H
596- else fromBase58String(S)), IntegerEntry(S, (q(S) - bS)), IntegerEntry(((I(R, S) + "_") + S), (P(I(R, S), S) - bS))]
604+ else fromBase58String(T)), IntegerEntry(T, (q(T) - bS)), IntegerEntry(((I(S, T) + "_") + T), (Q(I(S, T), T) - bS))]
597605 }
598606 else throw("Swap denied! 0.003 AxAi is required for the swap fee.")
599607 else throw("Invalid rate asset")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "main_asset"
55
66 let b = "lp_asset_"
77
88 let c = "pool__"
99
1010 let d = "STAKING_AMOUNT_"
1111
1212 let e = "LEASE_AMOUNT_"
1313
1414 let f = "ID_"
1515
1616 let g = "percentage_rate_fee"
1717
1818 let h = "Deposit_Height_Of_"
1919
2020 let i = 100000000
2121
2222 let j = 1000000
2323
2424 let k = Address(this.bytes)
2525
2626 let l = 5
2727
2828 func m (n) = toString(valueOrErrorMessage(addressFromString(n), (("Can't parse " + n) + " as address")))
2929
3030
3131 func o (p) = toBase58String(valueOrErrorMessage(value(assetInfo(fromBase58String(p))).id, (("Asset Id: " + p) + " is invalid.")))
3232
3333
3434 func q (p) = valueOrElse(getIntegerValue(this, p), 0)
3535
3636
3737 func r (p) = {
3838 let s = assetInfo(p)
3939 if ($isInstanceOf(s, "Asset"))
4040 then {
4141 let t = s
4242 t.name
4343 }
4444 else throw("Can't find asset")
4545 }
4646
4747
4848 let u = "activate"
4949
5050 let v = "activate_pools"
5151
5252 let w = "activate_swap"
5353
5454 let x = "activate_liquidity"
5555
5656 let y = "block_distribuition"
5757
5858 let z = "Total_Tokens_Locked_"
5959
6060 let A = "usdn_asset"
6161
6262 let B = "usdt_asset"
6363
6464 let C = "usdc_asset"
6565
6666 let D = "ngnn_asset"
6767
6868 let E = "eurn_asset"
6969
7070 let F = "WAVES"
7171
7272 let G = "accept_waves"
7373
7474 let H = unit
7575
7676 func I (J,K) = (((c + J) + "_") + K)
7777
7878
7979 func L (M) = valueOrElse(getInteger(this, M), 0)
8080
8181
82-func N (n,M) = valueOrElse(getIntegerValue(this, ((M + "_") + n)), 0)
82+func N (n,M) = {
83+ let s = getIntegerValue(this, ((M + "_") + n))
84+ if ($isInstanceOf(s, "Int"))
85+ then {
86+ let O = s
87+ O
88+ }
89+ else 0
90+ }
8391
8492
85-func O (n,M,t) = valueOrElse(getIntegerValue(this, ((((M + "_") + n) + "_") + t)), 1)
93+func P (n,M,t) = valueOrElse(getIntegerValue(this, ((((M + "_") + n) + "_") + t)), 1)
8694
8795
88-func P (M,t) = valueOrElse(getIntegerValue(this, ((M + "_") + t)), 1)
96+func Q (M,t) = valueOrElse(getIntegerValue(this, ((M + "_") + t)), 1)
8997
9098
91-func Q (R,S,n) = (((h + I(R, S)) + "_") + n)
99+func R (S,T,n) = (((h + I(S, T)) + "_") + n)
92100
93101
94-func T (n,M) = valueOrElse(getIntegerValue(this, ((("STAKE_LP_" + n) + "_") + M)), 0)
102+func U (n,M) = valueOrElse(getIntegerValue(this, ((("STAKE_LP_" + n) + "_") + M)), 0)
95103
96104
97-func U () = {
105+func V () = {
98106 let s = getStringValue(this, "admin")
99107 if ($isInstanceOf(s, "String"))
100108 then {
101- let V = s
102- Address(fromBase58String(V))
109+ let O = s
110+ Address(fromBase58String(O))
103111 }
104112 else this
105113 }
106114
107115
108116 func W (X,Y,Z) = if (if ((X == H))
109117 then (Y == "WAVES")
110118 else false)
111119 then if (Z)
112120 then true
113121 else throw("The smart contract does not currently support Waves.")
114122 else if ((X == fromBase58String(Y)))
115123 then true
116124 else false
117125
118126
119127 @Callable(aa)
120128 func constructor (ab,ac,ad,ae,af,ag,ah,ai,aj) = if (if ((aa.caller == this))
121129 then true
122- else (aa.caller == U()))
130+ else (aa.caller == V()))
123131 then {
124132 let ak = I(ac, ad)
125133 let al = I(ac, ae)
126134 let am = I(ac, af)
127135 let an = I(ac, F)
128136 let ao = I(ac, ab)
129137 let ap = I(ac, ag)
130138 let aq = I(ae, ad)
131139 let ar = I(ae, af)
132140 let as = I(ae, F)
133141 let at = I(ae, ab)
134142 let au = I(ae, ag)
135143 let av = I(ad, af)
136144 let aw = I(ad, F)
137145 let ax = I(ad, ab)
138146 let ay = I(ad, ag)
139147 let az = I(af, F)
140148 let aA = I(af, ab)
141149 let aB = I(af, ag)
142150 let aC = I(ab, F)
143151 let aD = I(ab, ag)
144152 let aE = I(ag, F)
145153 [StringEntry(a, ab), StringEntry(A, ac), StringEntry(C, ae), StringEntry(B, ad), StringEntry(D, af), BooleanEntry(G, aj), IntegerEntry(g, ah), BooleanEntry(u, true), BooleanEntry(w, false), BooleanEntry(v, false), BooleanEntry(x, false), IntegerEntry(y, ai), IntegerEntry(ak, 1), IntegerEntry(an, 1), IntegerEntry(al, 1), IntegerEntry(am, 1), IntegerEntry(ao, 1), IntegerEntry(aq, 1), IntegerEntry(ar, 1), IntegerEntry(as, 1), IntegerEntry(ax, 1), IntegerEntry(av, 1), IntegerEntry(aw, 1), IntegerEntry(az, 1), IntegerEntry(aA, 1), IntegerEntry(aC, 1), IntegerEntry(aE, 1), IntegerEntry(aD, 1), IntegerEntry(aB, 1), IntegerEntry(au, 1), IntegerEntry(ap, 1), IntegerEntry(ay, 1), StringEntry(E, ag)]
146154 }
147155 else throw("Only the Admin itself can invoke this function")
148156
149157
150158
151159 @Callable(aa)
152160 func activate (aF) = if (if ((aa.caller == this))
153161 then true
154- else (aa.caller == U()))
162+ else (aa.caller == V()))
155163 then [BooleanEntry(u, aF)]
156164 else throw("Only the Admin itself can invoke this function")
157165
158166
159167
160168 @Callable(aa)
161169 func maintenance (aG,aH,aI) = if (if ((aa.caller == this))
162170 then true
163- else (aa.caller == U()))
171+ else (aa.caller == V()))
164172 then [BooleanEntry(v, aG), BooleanEntry(w, aH), BooleanEntry(x, aI)]
165173 else throw("Only the Admin itself can invoke this function")
166174
167175
168176
169177 @Callable(aa)
170178 func percentualRateFeeSwapEdit (aJ) = if (if ((aa.caller == this))
171179 then true
172- else (aa.caller == U()))
180+ else (aa.caller == V()))
173181 then [IntegerEntry(g, aJ)]
174182 else throw("Only the Admin itself can invoke this function")
175183
176184
177185
178186 @Callable(aa)
179187 func acceptWaves (aK) = if (if ((aa.caller == this))
180188 then true
181- else (aa.caller == U()))
189+ else (aa.caller == V()))
182190 then [BooleanEntry(G, aK)]
183191 else throw("Only the Admin itself can invoke this function")
184192
185193
186194
187195 @Callable(aa)
188196 func blockDistribution (aL) = if (if ((aa.caller == this))
189197 then true
190- else (aa.caller == U()))
198+ else (aa.caller == V()))
191199 then [IntegerEntry(y, aL)]
192200 else throw("Only the Admin itself can invoke this function")
193201
194202
195203
196204 @Callable(aa)
197205 func addAdmin (n) = if (if ((aa.caller == this))
198206 then true
199- else (aa.caller == U()))
207+ else (aa.caller == V()))
200208 then [StringEntry("admin", n)]
201209 else throw("Only the Admin itself can invoke this function")
202210
203211
204212
205213 @Callable(aa)
206214 func lpAssetCreateForPairPool (J,K,aM,aN) = {
207215 let aO = if ((J == F))
208216 then F
209217 else r(fromBase58String(J))
210218 let aP = if ((K == F))
211219 then F
212220 else r(fromBase58String(K))
213221 let aQ = if (aN)
214222 then aM
215223 else ((aO + "_") + aP)
216224 let M = L(I(J, K))
217225 if (if ((aa.caller == this))
218226 then true
219- else (aa.caller == U()))
227+ else (aa.caller == V()))
220228 then if (!((M == 0)))
221229 then {
222230 let aR = Issue(aQ, ((("LP asset for pool liquidity in AxAi Swap pair " + J) + "_") + K), 1, 8, true)
223231 let aS = calculateAssetId(aR)
224232 [StringEntry((b + I(J, K)), toBase58String(aS)), aR]
225233 }
226234 else throw("Invalid Pool Key. Try inverting the assets")
227235 else throw("Only the Admin itself can invoke this function")
228236 }
229237
230238
231239
232240 @Callable(aa)
233-func deposit (aT,R,S) = {
241+func deposit (aT,S,T) = {
234242 let aU = getBooleanValue(this, u)
235243 let aV = getBooleanValue(this, x)
236244 let aW = getStringValue(this, a)
237245 let aX = if (aT)
238- then getStringValue(this, (b + I(R, S)))
246+ then getStringValue(this, (b + I(S, T)))
239247 else aW
240248 if (aU)
241249 then if (!(aV))
242250 then if ((aa.payments[0].assetId != fromBase58String(aX)))
243251 then throw((("Invalid asset! Kindly Deposit Only " + aW) + " or valid asset lp"))
244252 else if (!(aT))
245253 then {
246254 let aY = toBase58String(aa.caller.bytes)
247255 let aZ = {
248256 let s = getInteger(this, aY)
249257 if ($isInstanceOf(s, "Int"))
250258 then {
251259 let ba = s
252260 ba
253261 }
254262 else 0
255263 }
256264 let bb = (aZ + aa.payments[0].amount)
257265 let bc = IntegerEntry(aY, bb)
258266 let bd = IntegerEntry((h + aY), height)
259267 let be = {
260268 let s = getInteger(this, "Total_Tokens_Locked:")
261269 if ($isInstanceOf(s, "Int"))
262270 then {
263271 let ba = s
264272 ba
265273 }
266274 else 0
267275 }
268276 let bf = (be + aa.payments[0].amount)
269277 let bg = IntegerEntry("Total_Tokens_Locked:", bf)
270278 [bc, bd, bg]
271279 }
272280 else {
273- let bh = I(R, S)
281+ let bh = I(S, T)
274282 let M = L(bh)
275283 if (!((M == 0)))
276284 then {
277285 let aY = toBase58String(aa.caller.bytes)
278286 let aZ = {
279287 let s = getInteger(this, ((("STAKE_LP_" + aY) + "_") + bh))
280288 if ($isInstanceOf(s, "Int"))
281289 then {
282290 let ba = s
283291 ba
284292 }
285293 else 0
286294 }
287295 let bb = (aZ + aa.payments[0].amount)
288296 let bc = IntegerEntry(((("STAKE_LP_" + aY) + "_") + bh), bb)
289297 let bd = IntegerEntry(((((h + "_") + aY) + "_") + bh), height)
290298 let be = {
291299 let s = getInteger(this, ("Total_Tokens_LP_Locked_" + bh))
292300 if ($isInstanceOf(s, "Int"))
293301 then {
294302 let ba = s
295303 ba
296304 }
297305 else 0
298306 }
299307 let bf = (be + aa.payments[0].amount)
300308 let bg = IntegerEntry(("Total_Tokens_LP_Locked_" + bh), bf)
301309 [bc, bd, bg]
302310 }
303311 else throw("Invalid Pool key.")
304312 }
305313 else throw("liquidity is currently under maintenance.")
306314 else throw("dApp is currently under maintenance.")
307315 }
308316
309317
310318
311319 @Callable(aa)
312-func remove (aT,R,S,bi) = {
320+func remove (aT,S,T,bi) = {
313321 let aU = getBooleanValue(this, u)
314322 let aV = getBooleanValue(this, x)
315323 let bj = aa.payments[0]
316324 let aW = fromBase58String(getStringValue(this, a))
317325 if (aU)
318326 then if (!(aV))
319327 then {
320328 let aY = toBase58String(aa.caller.bytes)
321329 let aZ = valueOrElse(if (aT)
322- then getIntegerValue(this, ((("STAKE_LP_" + aY) + "_") + I(R, S)))
330+ then getIntegerValue(this, ((("STAKE_LP_" + aY) + "_") + I(S, T)))
323331 else getInteger(this, aY), 0)
324332 let bk = if (aT)
325- then ((((h + "_") + aY) + "_") + I(R, S))
333+ then ((((h + "_") + aY) + "_") + I(S, T))
326334 else (h + aY)
327335 let be = if (aT)
328- then getIntegerValue(this, ("Total_Tokens_LP_Locked_" + I(R, S)))
336+ then getIntegerValue(this, ("Total_Tokens_LP_Locked_" + I(S, T)))
329337 else getIntegerValue(this, "Total_Tokens_Locked:")
330338 let bf = (be - bi)
331339 let bl = (height - getIntegerValue(this, bk))
332340 let bm = getIntegerValue(this, y)
333341 let bn = ((bl * bm) * i)
334342 let bo = (bn / (be / bi))
335343 if ((0 > bi))
336344 then throw(if (aT)
337- then (((("Can't withdraw negative " + R) + "/") + S) + " amount")
345+ then (((("Can't withdraw negative " + S) + "/") + T) + " amount")
338346 else "Can't withdraw negative AxAi amount")
339347 else {
340348 let bb = (aZ - bi)
341349 if ((0 > bb))
342350 then throw(if (aT)
343- then (((("Not enough Asset Lp " + R) + "/") + S) + " balance")
351+ then (((("Not enough Asset Lp " + S) + "/") + T) + " balance")
344352 else "Not enough AxAi balance")
345353 else [IntegerEntry(if (aT)
346- then ((("STAKE_LP_" + aY) + "_") + I(R, S))
354+ then ((("STAKE_LP_" + aY) + "_") + I(S, T))
347355 else aY, bb), IntegerEntry(if (aT)
348- then ("Total_Tokens_LP_Locked_" + I(R, S))
356+ then ("Total_Tokens_LP_Locked_" + I(S, T))
349357 else "Total_Tokens_Locked:", bf), ScriptTransfer(aa.caller, bi, if (aT)
350- then fromBase58String(getStringValue(this, (b + I(R, S))))
358+ then fromBase58String(getStringValue(this, (b + I(S, T))))
351359 else aW), ScriptTransfer(aa.caller, bo, aW)]
352360 }
353361 }
354362 else throw("liquidity is currently under maintenance.")
355363 else throw("dApp is currently under maintenance.")
356364 }
357365
358366
359367
360368 @Callable(aa)
361-func addLiquidity (R,S) = {
369+func addLiquidity (S,T) = {
362370 let aU = getBooleanValue(this, u)
363371 let bp = getBooleanValue(this, v)
364372 let Z = getBooleanValue(this, G)
365- let M = L(I(R, S))
373+ let M = L(I(S, T))
366374 let J = aa.payments[0].assetId
367375 let K = aa.payments[1].assetId
368376 let bq = fromBase58String(getStringValue(this, A))
369377 let br = fromBase58String(getStringValue(this, C))
370378 let bs = fromBase58String(getStringValue(this, B))
371379 let bt = fromBase58String(getStringValue(this, D))
372380 let bu = fromBase58String(getStringValue(this, E))
373381 let aW = fromBase58String(getStringValue(this, a))
374- let aX = getStringValue(this, (b + I(R, S)))
382+ let aX = getStringValue(this, (b + I(S, T)))
375383 if (aU)
376384 then if (!(bp))
377385 then if (if (if (!((J == K)))
378- then W(J, R, Z)
386+ then W(J, S, Z)
379387 else false)
380- then W(K, S, Z)
388+ then W(K, T, Z)
381389 else false)
382390 then if (if (if (if (if (if (if (if ((J == bq))
383391 then true
384392 else (J == br))
385393 then true
386394 else (J == bs))
387395 then true
388396 else (J == bt))
389397 then true
390398 else (J == aW))
391399 then true
392400 else (J == H))
393401 then true
394402 else (J == bu))
395403 then if (if (if (if (if (if ((K == bq))
396404 then true
397405 else (K == br))
398406 then true
399407 else (K == bs))
400408 then true
401409 else (K == bt))
402410 then true
403411 else (K == aW))
404412 then true
405413 else (K == H))
406414 then true
407415 else (K == bu)
408416 else false)
409417 then if (!((M == 0)))
410418 then {
411419 let aY = toBase58String(aa.caller.bytes)
412- let aZ = N(aY, I(R, S))
413- let bv = O(aY, I(R, S), R)
414- let bw = O(aY, I(R, S), S)
415- let bx = P(I(R, S), R)
416- let by = P(I(R, S), S)
420+ let aZ = N(aY, I(S, T))
421+ let bv = P(aY, I(S, T), S)
422+ let bw = P(aY, I(S, T), T)
423+ let bx = Q(I(S, T), S)
424+ let by = Q(I(S, T), T)
417425 let bz = (bx / by)
418426 let bA = (bv + aa.payments[0].amount)
419427 let bB = (bw + aa.payments[1].amount)
420428 let bC = (aZ + bz)
421429 let bD = (bx + aa.payments[0].amount)
422430 let bE = (by + aa.payments[1].amount)
423-[Reissue(fromBase58String(aX), bz, true), ScriptTransfer(Address(aa.caller.bytes), bz, fromBase58String(aX)), IntegerEntry(Q(R, S, aY), height), IntegerEntry(((((aY + "_") + I(R, S)) + "_") + R), bA), IntegerEntry(((((aY + "_") + I(R, S)) + "_") + S), bB), IntegerEntry(((I(R, S) + "_") + aY), bC), IntegerEntry(((I(R, S) + "_") + R), bD), IntegerEntry(((I(R, S) + "_") + S), bE), IntegerEntry(R, (q(R) + aa.payments[0].amount)), IntegerEntry(S, (q(S) + aa.payments[1].amount)), IntegerEntry(aX, (q(aX) + bz))]
431+[Reissue(fromBase58String(aX), bz, true), ScriptTransfer(Address(aa.caller.bytes), bz, fromBase58String(aX)), IntegerEntry(R(S, T, aY), height), IntegerEntry(((((aY + "_") + I(S, T)) + "_") + S), bA), IntegerEntry(((((aY + "_") + I(S, T)) + "_") + T), bB), IntegerEntry(((I(S, T) + "_") + aY), bC), IntegerEntry(((I(S, T) + "_") + S), bD), IntegerEntry(((I(S, T) + "_") + T), bE), IntegerEntry(S, (q(S) + aa.payments[0].amount)), IntegerEntry(T, (q(T) + aa.payments[1].amount)), IntegerEntry(aX, (q(aX) + bz))]
424432 }
425433 else throw("Invalid Pool Key.")
426434 else throw(((("Invalid Asset1 or Asset2! Asset1: " + toString(if (if (if (if (if (if ((J == bq))
427435 then true
428436 else (J == br))
429437 then true
430438 else (J == bs))
431439 then true
432440 else (J == bt))
433441 then true
434442 else (J == aW))
435443 then true
436444 else (J == H))
437445 then true
438446 else (J == bu))) + " Asset2:") + toString(if (if (if (if (if (if ((K == bq))
439447 then true
440448 else (K == br))
441449 then true
442450 else (K == bs))
443451 then true
444452 else (K == bt))
445453 then true
446454 else (K == aW))
447455 then true
448456 else (K == H))
449457 then true
450458 else (K == bu))))
451459 else throw("Asset1 cannot be equal to Asset2")
452460 else throw("liquidity is currently under maintenance.")
453461 else throw("dApp is currently under maintenance.")
454462 }
455463
456464
457465
458466 @Callable(aa)
459-func removeLiquidity (R,S,bF) = {
467+func removeLiquidity (S,T,bF) = {
460468 let aY = toBase58String(aa.caller.bytes)
461469 let aU = getBooleanValue(this, u)
462470 let bp = getBooleanValue(this, v)
463471 let Z = getBooleanValue(this, G)
464- let bh = I(R, S)
472+ let bh = I(S, T)
465473 let M = L(bh)
466- let J = if ((R == F))
467- then if (Z)
468- then H
469- else throw("The smart contract does not currently support Waves.")
470- else fromBase58String(R)
471- let K = if ((S == F))
474+ let J = if ((S == F))
472475 then if (Z)
473476 then H
474477 else throw("The smart contract does not currently support Waves.")
475478 else fromBase58String(S)
479+ let K = if ((T == F))
480+ then if (Z)
481+ then H
482+ else throw("The smart contract does not currently support Waves.")
483+ else fromBase58String(T)
476484 let bq = fromBase58String(getStringValue(this, A))
477485 let br = fromBase58String(getStringValue(this, C))
478486 let bs = fromBase58String(getStringValue(this, B))
479487 let bt = fromBase58String(getStringValue(this, D))
480488 let aW = fromBase58String(getStringValue(this, a))
481489 let bu = fromBase58String(getStringValue(this, E))
482- let aX = getStringValue(this, (b + I(R, S)))
483- let aZ = N(aY, I(R, S))
484- let bG = T(aY, bh)
490+ let aX = getStringValue(this, (b + I(S, T)))
491+ let aZ = N(aY, I(S, T))
492+ let bG = U(aY, bh)
485493 let bH = getIntegerValue(this, aX)
486- let bI = getIntegerValue(this, ((I(R, S) + "_") + R))
487- let bJ = getIntegerValue(this, ((I(R, S) + "_") + S))
494+ let bI = getIntegerValue(this, ((I(S, T) + "_") + S))
495+ let bJ = getIntegerValue(this, ((I(S, T) + "_") + T))
488496 if (aU)
489497 then if (!(bp))
490- then if (!((R == S)))
498+ then if (!((S == T)))
491499 then if (if (if (if (if (if (if (if ((J == bq))
492500 then true
493501 else (J == br))
494502 then true
495503 else (J == bs))
496504 then true
497505 else (J == bt))
498506 then true
499507 else (J == aW))
500508 then true
501509 else (J == H))
502510 then true
503511 else (J == bu))
504512 then if (if (if (if (if (if ((K == bq))
505513 then true
506514 else (K == br))
507515 then true
508516 else (K == bs))
509517 then true
510518 else (K == bt))
511519 then true
512520 else (K == aW))
513521 then true
514522 else (K == H))
515523 then true
516524 else (K == bu)
517525 else false)
518526 then if (!((M == 0)))
519527 then if (!((aZ == 0)))
520528 then if (((aZ - bG) >= bF))
521529 then {
522530 let bK = (bF / bH)
523531 let bL = (bK * bI)
524532 let bM = (bK * bJ)
525- let bx = P(I(R, S), R)
526- let by = P(I(R, S), S)
527- let bv = O(aY, I(R, S), R)
528- let bw = O(aY, I(R, S), S)
533+ let bx = Q(I(S, T), S)
534+ let by = Q(I(S, T), T)
535+ let bv = P(aY, I(S, T), S)
536+ let bw = P(aY, I(S, T), T)
529537 let bA = (bv - bL)
530538 let bB = (bw - bM)
531539 let bC = (aZ - bF)
532540 let bD = (bx - bL)
533541 let bE = (by - bM)
534-[Burn(fromBase58String(aX), bF), ScriptTransfer(Address(aa.caller.bytes), bL, J), ScriptTransfer(Address(aa.caller.bytes), bM, K), IntegerEntry(Q(R, S, aY), height), IntegerEntry(((((aY + "_") + I(R, S)) + "_") + R), bA), IntegerEntry(((((aY + "_") + I(R, S)) + "_") + S), bB), IntegerEntry(((I(R, S) + "_") + aY), bC), IntegerEntry(((I(R, S) + "_") + R), bD), IntegerEntry(((I(R, S) + "_") + S), bE), IntegerEntry(R, (q(R) - bL)), IntegerEntry(S, (q(S) - bM)), IntegerEntry(aX, (q(aX) - bF))]
542+[Burn(fromBase58String(aX), bF), ScriptTransfer(Address(aa.caller.bytes), bL, J), ScriptTransfer(Address(aa.caller.bytes), bM, K), IntegerEntry(R(S, T, aY), height), IntegerEntry(((((aY + "_") + I(S, T)) + "_") + S), bA), IntegerEntry(((((aY + "_") + I(S, T)) + "_") + T), bB), IntegerEntry(((I(S, T) + "_") + aY), bC), IntegerEntry(((I(S, T) + "_") + S), bD), IntegerEntry(((I(S, T) + "_") + T), bE), IntegerEntry(S, (q(S) - bL)), IntegerEntry(T, (q(T) - bM)), IntegerEntry(aX, (q(aX) - bF))]
535543 }
536544 else throw("Amount to be withdrawn greater than the amount available for withdrawal.")
537545 else throw("You have no locked values ​​in the pool")
538546 else throw("Invalid Pool Key.")
539547 else throw("Invalid Asset1 or Asset2!")
540548 else throw("Asset1 cannot be equal to Asset2")
541549 else throw("liquidity is currently under maintenance.")
542550 else throw("dApp is currently under maintenance.")
543551 }
544552
545553
546554
547555 @Callable(aa)
548-func swap (R,S) = {
556+func swap (S,T) = {
549557 let aY = toBase58String(aa.caller.bytes)
550558 let Z = getBooleanValue(this, G)
551559 let aU = getBooleanValue(this, u)
552560 let bN = getBooleanValue(this, w)
553- let bh = I(R, S)
561+ let bh = I(S, T)
554562 let M = L(bh)
555563 let J = aa.payments[0].assetId
556564 let bq = fromBase58String(getStringValue(this, A))
557565 let br = fromBase58String(getStringValue(this, C))
558566 let bs = fromBase58String(getStringValue(this, B))
559567 let bt = fromBase58String(getStringValue(this, D))
560568 let aW = fromBase58String(getStringValue(this, a))
561569 let bu = fromBase58String(getStringValue(this, E))
562- let bO = getIntegerValue(this, ((I(R, S) + "_") + R))
563- let bP = getIntegerValue(this, ((I(R, S) + "_") + S))
570+ let bO = getIntegerValue(this, ((I(S, T) + "_") + S))
571+ let bP = getIntegerValue(this, ((I(S, T) + "_") + T))
564572 let bQ = getIntegerValue(this, g)
565573 if (aU)
566574 then if (!(bN))
567- then if (if (!((R == S)))
568- then if (W(J, R, Z))
575+ then if (if (!((S == T)))
576+ then if (W(J, S, Z))
569577 then true
570- else W(J, S, Z)
578+ else W(J, T, Z)
571579 else false)
572580 then if (if (if (if (if (if (if ((J == bq))
573581 then true
574582 else (J == br))
575583 then true
576584 else (J == bs))
577585 then true
578586 else (J == bt))
579587 then true
580588 else (J == aW))
581589 then true
582590 else (J == bu))
583591 then true
584592 else (J == H))
585593 then if (!((M == 0)))
586594 then if ((aa.payments[1].assetId == aW))
587595 then if ((aa.payments[1].amount == 300000))
588596 then {
589- let bR = if (!((J == fromBase58String(R))))
597+ let bR = if (!((J == fromBase58String(S))))
590598 then (bO / bP)
591599 else (bP / bO)
592600 let aL = (aa.payments[0].amount - ((aa.payments[0].amount * bQ) / (100 * i)))
593601 let bS = (aL * bR)
594-[ScriptTransfer(Address(aa.caller.bytes), bS, if ((S == F))
602+[ScriptTransfer(Address(aa.caller.bytes), bS, if ((T == F))
595603 then H
596- else fromBase58String(S)), IntegerEntry(S, (q(S) - bS)), IntegerEntry(((I(R, S) + "_") + S), (P(I(R, S), S) - bS))]
604+ else fromBase58String(T)), IntegerEntry(T, (q(T) - bS)), IntegerEntry(((I(S, T) + "_") + T), (Q(I(S, T), T) - bS))]
597605 }
598606 else throw("Swap denied! 0.003 AxAi is required for the swap fee.")
599607 else throw("Invalid rate asset")
600608 else throw("Invalid Swap Key.")
601609 else throw("Invalid Asset1 or Asset2!")
602610 else throw("Asset1 cannot be equal to Asset2")
603611 else throw("Swap is currently under maintenance.")
604612 else throw("dApp is currently under maintenance.")
605613 }
606614
607615
608616 @Verifier(bT)
609617 func bU () = {
610618 let s = bT
611619 if ($isInstanceOf(s, "Order"))
612620 then {
613621 let bV = s
614622 true
615623 }
616624 else if ($isInstanceOf(s, "ExchangeTransaction"))
617625 then {
618626 let bW = s
619627 true
620628 }
621629 else sigVerify(bT.bodyBytes, bT.proofs[0], bT.senderPublicKey)
622630 }
623631

github/deemru/w8io/026f985 
117.59 ms