tx · 6Myc93wFFRxHSQhbtmajAaoerkfsmxurwsBcMYUs2yd8

3N61Cvq5XcnPk9rxpy2Rnp3bSr4syNGUJph:  -0.01400000 Waves

2021.11.19 16:14 [1797969] smart account 3N61Cvq5XcnPk9rxpy2Rnp3bSr4syNGUJph > SELF 0.00000000 Waves

{ "type": 13, "id": "6Myc93wFFRxHSQhbtmajAaoerkfsmxurwsBcMYUs2yd8", "fee": 1400000, "feeAssetId": null, "timestamp": 1637327697933, "version": 2, "chainId": 84, "sender": "3N61Cvq5XcnPk9rxpy2Rnp3bSr4syNGUJph", "senderPublicKey": "G7cNXePvAHUHmZfXa1eHnvFeH6DuykPC5wm9v9djTKgD", "proofs": [ "3xF2jdvsuWYMmabnZHFrVvrQjUUumhuJwBzrCZweuwGpEZ4qm53obdjtv3bQJJe1Kw6omRuuJK5XH278L9zcPpAX" ], "script": "base64:AAIFAAAAAAAAACQIAhIGCgQYGBgREgMKARgSBgoECAgBARIAEgMKAQgSBAoCCAEAAAAGAAAAAApkZXBvc2l0RmVlAAAAAAAAAAPoAAAAAA1jb250cm9sbGVyRmVlAAAAAAAAACcQAAAAAAtwbGF0Zm9ybUZlZQAAAAAAAAAnEAAAAAAMYWRtaW5QdWJLZXkxAQAAACBML0XVfOoUYZ0u5wVeWtFjxl6V510E+3IIEVV8EjlQeAAAAAAMYWRtaW5QdWJLZXkyAQAAACBML0XVfOoUYZ0u5wVeWtFjxl6V510E+3IIEVV8EjlQeAAAAAAMYWRtaW5QdWJLZXkzAQAAACBML0XVfOoUYZ0u5wVeWtFjxl6V510E+3IIEVV8EjlQeAAAAAYAAAABaQEAAAAIYWRkUG9vbHMAAAAEAAAABXBvb2xzAAAAD2xpcXVpZGl0eVRva2VucwAAAA1zZXJ2aWNlVG9rZW5zAAAAFmxpcXVpZGl0eVRva2VuRGVjaW1hbHMDCQEAAAAPY29udGFpbnNFbGVtZW50AAAAAgkABEwAAAACBQAAAAxhZG1pblB1YktleTEJAARMAAAAAgUAAAAMYWRtaW5QdWJLZXkyCQAETAAAAAIFAAAADGFkbWluUHViS2V5MwUAAAADbmlsCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkKAQAAABBnZW5lcmF0ZVBvb2xLZXlzAAAAAgAAAAthY2N1bXVsYXRlZAAAAARwb29sCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAABHBvb2wCAAAADl9hc3NldF9iYWxhbmNlAAAAAAAAAAAABQAAAAthY2N1bXVsYXRlZAoBAAAAHmdlbmVyYXRlUG9vbExpcXVpZGl0eVRva2VuS2V5cwAAAAIAAAALYWNjdW11bGF0ZWQAAAAEcG9vbAQAAAAJcG9vbEluZGV4CQEAAAAFdmFsdWUAAAABCQAETwAAAAIFAAAABXBvb2xzBQAAAARwb29sBAAAAA5saXF1aWRpdHlUb2tlbgkAAZEAAAACBQAAAA9saXF1aWRpdHlUb2tlbnMFAAAACXBvb2xJbmRleAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIFAAAABHBvb2wCAAAAEF9saXF1aWRpdHlfdG9rZW4FAAAADmxpcXVpZGl0eVRva2VuBQAAAAthY2N1bXVsYXRlZAoBAAAAHGdlbmVyYXRlUG9vbFNlcnZpY2VUb2tlbktleXMAAAACAAAAC2FjY3VtdWxhdGVkAAAABHBvb2wEAAAACXBvb2xJbmRleAkBAAAABXZhbHVlAAAAAQkABE8AAAACBQAAAAVwb29scwUAAAAEcG9vbAQAAAAObGlxdWlkaXR5VG9rZW4JAAGRAAAAAgUAAAANc2VydmljZVRva2VucwUAAAAJcG9vbEluZGV4CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgUAAAAEcG9vbAIAAAAOX3NlcnZpY2VfdG9rZW4FAAAADmxpcXVpZGl0eVRva2VuBQAAAAthY2N1bXVsYXRlZAoBAAAAJWdlbmVyYXRlUG9vbExpcXVpZGl0eVRva2VuRGVjaW1hbEtleXMAAAACAAAAC2FjY3VtdWxhdGVkAAAABHBvb2wEAAAACXBvb2xJbmRleAkBAAAABXZhbHVlAAAAAQkABE8AAAACBQAAAAVwb29scwUAAAAEcG9vbAQAAAAObGlxdWlkaXR5VG9rZW4JAAGRAAAAAgUAAAAWbGlxdWlkaXR5VG9rZW5EZWNpbWFscwUAAAAJcG9vbEluZGV4CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAABHBvb2wCAAAADl9zZXJ2aWNlX3Rva2VuBQAAAA5saXF1aWRpdHlUb2tlbgUAAAALYWNjdW11bGF0ZWQKAQAAABZnZW5lcmF0ZVBvb2xBY3RpdmVLZXlzAAAAAgAAAAthY2N1bXVsYXRlZAAAAARwb29sCQAETAAAAAIJAQAAAAxCb29sZWFuRW50cnkAAAACCQABLAAAAAIFAAAABHBvb2wCAAAAB19hY3RpdmUGBQAAAAthY2N1bXVsYXRlZAQAAAAPcG9vbEJhbGFuY2VLZXlzCgAAAAACJGwFAAAABXBvb2xzCgAAAAACJHMJAAGQAAAAAQUAAAACJGwKAAAAAAUkYWNjMAUAAAADbmlsCgEAAAABMQAAAAIAAAACJGEAAAACJGkDCQAAZwAAAAIFAAAAAiRpBQAAAAIkcwUAAAACJGEJAQAAABBnZW5lcmF0ZVBvb2xLZXlz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CQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgkBAAAAATEAAAACCQEAAAABMQAAAAIJAQAAAAExAAAAAgUAAAAFJGFjYzAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAIAAAAAAAAAAAMAAAAAAAAAAAQAAAAAAAAAAAUAAAAAAAAAAAYAAAAAAAAAAAcAAAAAAAAAAAgAAAAAAAAAAAkAAAAAAAAAAAoAAAAAAAAAAAsAAAAAAAAAAAwAAAAAAAAAAA0AAAAAAAAAAA4AAAAAAAAAAA8AAAAAAAAAABAAAAAAAAAAABEAAAAAAAAAABIAAAAAAAAAABMAAAAAAAAAABQAAAAAAAAAABUAAAAAAAAAABYAAAAAAAAAABcAAAAAAAAAABgAAAAAAAAAABkAAAAAAAAAABoAAAAAAAAAABsAAAAAAAAAABwAAAAAAAAAAB0AAAAAAAAAAB4AAAAAAAAAAB8AAAAAAAAAACAAAAAAAAAAACEAAAAAAAAAACIAAAAAAAAAACMAAAAAAAAAACQAAAAAAAAAACUAAAAAAAAAACYAAAAAAAAAACcAAAAAAAAAACgAAAAAAAAAACkAAAAAAAAAACoAAAAAAAAAACsAAAAAAAAAACwAAAAAAAAAAC0AAAAAAAAAAC4AAAAAAAAAAC8AAAAAAAAAADAAAAAAAAAAADEAAAAAAAAAADIAAAAAAAAAADMAAAAAAAAAADQAAAAAAAAAADUAAAAAAAAAADYAAAAAAAAAADcAAAAAAAAAADgAAAAAAAAAADkAAAAAAAAAADoAAAAAAAAAADsAAAAAAAAAADwAAAAAAAAAAD0AAAAAAAAAAD4AAAAAAAAAAD8AAAAAAAAAAEAAAAAAAAAAAEEAAAAAAAAAAEIAAAAAAAAAAEMAAAAAAAAAAEQAAAAAAAAAAEUAAAAAAAAAAEYAAAAAAAAAAEcAAAAAAAAAAEgAAAAAAAAAAEkAAAAAAAAAAEoAAAAAAAAAAEsAAAAAAAAAAEwAAAAAAAAAAE0AAAAAAAAAAE4AAAAAAAAAAE8AAAAAAAAAAFAAAAAAAAAAAFEAAAAAAAAAAFIAAAAAAAAAAFMAAAAAAAAAAFQAAAAAAAAAAFUAAAAAAAAAAFYAAAAAAAAAAFcAAAAAAAAAAFgAAAAAAAAAAFkAAAAAAAAAAFoAAAAAAAAAAFsAAAAAAAAAAFwAAAAAAAAAAF0AAAAAAAAAAF4AAAAAAAAAAF8AAAAAAAAAAGAAAAAAAAAAAGEAAAAAAAAAAGIAAAAAAAAAAGMAAAAAAAAAAGQFAAAACmRlbGV0ZUtleXMJAAACAAAAAQIAAAAhT25seSBh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JG1hdGNoMAAAAAAAAAAAAAQAAAANbmV3UG9vbEFtb3VudAkAAGQAAAACBQAAAApwb29sQW1vdW50BQAAAAZhbW91bnQEAAAAFHVzZXJBbW91bnRXaXRob3V0RmVlCQAAZQAAAAIJAABlAAAAAgUAAAAGYW1vdW50CQEAAAAIZnJhY3Rpb24AAAAEBQAAAAZhbW91bnQAAAAAAAAAAAEFAAAACmRlcG9zaXRGZWUFAAAABkhBTEZVUAkBAAAACGZyYWN0aW9uAAAABAUAAAAGYW1vdW50AAAAAAAAAAABBQAAAA1jb250cm9sbGVyRmVlBQAAAAZIQUxGVVAEAAAAEW5ld1VzZXJQb29sQW1vdW50CQAAZAAAAAIFAAAACnVzZXJBbW91bnQFAAAAFHVzZXJBbW91bnRXaXRob3V0RmVlBAAAAA1sb2NrVG9rZW5zS2V5CQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgUAAAAEcG9vbAIAAAABXwUAAAALdXNlckFkZHJlc3MCAAAAAV8JAAJYAAAAAQgFAAAAAWkAAAANdHJhbnNhY3Rpb25JZAIAAAAHX2xvY2tlZAkABEwAAAACCQEAAAAHUmVpc3N1ZQAAAAMJAAJZAAAAAQUAAAAQZEFwcEFzc2V0QWRkcmVzcwUAAAAUdXNlckFtb3VudFdpdGhvdXRGZWUGCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAUdXNlckFtb3VudFdpdGhvdXRGZWUJAAJZAAAAAQUAAAAQZEFwcEFzc2V0QWRkcmVzcwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAANbG9ja1Rva2Vuc0tleQUAAAAUdXNlckFtb3VudFdpdGhvdXRGZWUJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAADXBvb2xBbW91bnRLZXkFAAAADW5ld1Bvb2xBbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIFAAAAEXVzZXJQb29sQW1vdW50S2V5BQAAABFuZXdVc2VyUG9vbEFtb3VudAUAAAADbmlsAAAAAWkBAAAACHdpdGhkcmF3AAAAAgAAAARwb29sAAAABmFt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", "height": 1797969, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EtXsXcPqUCutpDtfekrpKKwyMDPfvV1U5vs8Zo2kwQ1r Next: D6TzzohnNh6QHa2XbewLRNBPPnQUxhD6vTdhnfVTcvn3 Diff:
OldNewDifferences
115115
116116
117117 @Callable(g)
118-func issueToken (G,H,I,J) = if (containsElement([d, e, f], g.callerPublicKey))
119- then [Issue(G, H, I, J, true, unit, 0)]
118+func deleteDepositLockRecord (G) = if (containsElement([d, e, f], g.callerPublicKey))
119+ then {
120+ func H (m,I) = DeleteEntry((I + "_locked")) :: m
121+
122+ let J = {
123+ let v = G
124+ let w = size(v)
125+ let x = nil
126+ func y (z,A) = if ((A >= w))
127+ then z
128+ else H(z, v[A])
129+
130+ func B (z,A) = if ((A >= w))
131+ then z
132+ else throw("List size exceeds 100")
133+
134+ B(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
135+ }
136+ J
137+ }
120138 else throw("Only admin can call this function")
121139
122140
123141
124-@Callable(K)
142+@Callable(g)
143+func issueToken (K,L,M,N) = if (containsElement([d, e, f], g.callerPublicKey))
144+ then [Issue(K, L, M, N, true, unit, 0)]
145+ else throw("Only admin can call this function")
146+
147+
148+
149+@Callable(O)
125150 func call () = {
126- let L = 10
127- let M = 1
128- let N = 8
129- let O = 6
130- let P = ((N + O) / 2)
131- let Q = pow(L, N, 5, 1, N, DOWN)
132- let R = pow(M, O, 5, 1, O, DOWN)
133- let S = pow(10, 0, P, 0, 0, DOWN)
134- let T = fraction(Q, R, S)
135-[IntegerEntry("fisrt", Q), IntegerEntry("second", R), IntegerEntry("third", S), IntegerEntry("fouth", T)]
151+ let P = 10
152+ let Q = 1
153+ let R = 8
154+ let S = 6
155+ let T = ((R + S) / 2)
156+ let U = pow(P, R, 5, 1, R, DOWN)
157+ let V = pow(Q, S, 5, 1, S, DOWN)
158+ let W = pow(10, 0, T, 0, 0, DOWN)
159+ let X = fraction(U, V, W)
160+[IntegerEntry("fisrt", U), IntegerEntry("second", V), IntegerEntry("third", W), IntegerEntry("fouth", X)]
136161 }
137162
138163
141166 func deposit (n) = if ((size(g.payments) != 1))
142167 then throw("One attached payment expected")
143168 else {
144- let U = g.payments[0].amount
145- let V = g.payments[0].assetId
146- let W = {
147- let X = V
148- if ($isInstanceOf(X, "ByteVector"))
169+ let Y = g.payments[0].amount
170+ let Z = g.payments[0].assetId
171+ let aa = {
172+ let ab = Z
173+ if ($isInstanceOf(ab, "ByteVector"))
149174 then {
150- let Y = X
151- toBase58String(Y)
175+ let ac = ab
176+ toBase58String(ac)
152177 }
153178 else throw("Match error")
154179 }
155- if ((0 >= U))
156- then throw(("Deposit amount must be positive. Actual: " + toString(U)))
180+ if ((0 >= Y))
181+ then throw(("Deposit amount must be positive. Actual: " + toString(Y)))
157182 else {
158- let Z = (n + "_asset_balance")
159- let aa = toString(g.caller)
160- let ab = (((n + "_") + aa) + "_asset_balance")
161- let ac = {
162- let X = getString((n + "_service_token"))
163- if ($isInstanceOf(X, "String"))
183+ let ad = (n + "_asset_balance")
184+ let ae = toString(g.caller)
185+ let af = (((n + "_") + ae) + "_asset_balance")
186+ let ag = {
187+ let ab = getString((n + "_service_token"))
188+ if ($isInstanceOf(ab, "String"))
164189 then {
165- let ad = X
166- ad
190+ let ah = ab
191+ ah
167192 }
168193 else {
169- let ae = X
194+ let ai = ab
170195 throw("You try to deposit on unsupported pool")
171196 }
172197 }
173- let af = {
174- let X = getString((n + "_liquidity_token"))
175- if ($isInstanceOf(X, "String"))
198+ let aj = {
199+ let ab = getString((n + "_liquidity_token"))
200+ if ($isInstanceOf(ab, "String"))
176201 then {
177- let ad = X
178- ad
202+ let ah = ab
203+ ah
179204 }
180205 else {
181- let ae = X
206+ let ai = ab
182207 throw("You try to deposit on unsupported pool")
183208 }
184209 }
185- let ag = {
186- let X = assetInfo(fromBase58String(af))
187- if ($isInstanceOf(X, "Asset"))
210+ let ak = {
211+ let ab = assetInfo(fromBase58String(aj))
212+ if ($isInstanceOf(ab, "Asset"))
188213 then {
189- let ah = X
190- ah.decimals
214+ let al = ab
215+ al.decimals
191216 }
192217 else throw("Can't find asset")
193218 }
194- if ((af != W))
219+ if ((aj != aa))
195220 then throw("You attached wrong liquidity token from Swop.fi")
196221 else {
197- let ai = getIntegerValue(this, Z)
198- let aj = {
199- let X = getInteger(ab)
200- if ($isInstanceOf(X, "Int"))
222+ let am = getIntegerValue(this, ad)
223+ let an = {
224+ let ab = getInteger(af)
225+ if ($isInstanceOf(ab, "Int"))
201226 then {
202- let ak = X
203- ak
227+ let ao = ab
228+ ao
204229 }
205230 else {
206- let ae = X
231+ let ai = ab
207232 0
208233 }
209234 }
210- let al = (ai + U)
211- let am = ((U - fraction(U, 1, a, HALFUP)) - fraction(U, 1, b, HALFUP))
212- let an = (aj + am)
213- let ao = (((((n + "_") + aa) + "_") + toBase58String(g.transactionId)) + "_locked")
214-[Reissue(fromBase58String(ac), am, true), ScriptTransfer(g.caller, am, fromBase58String(ac)), IntegerEntry(ao, am), IntegerEntry(Z, al), IntegerEntry(ab, an)]
235+ let ap = (am + Y)
236+ let aq = ((Y - fraction(Y, 1, a, HALFUP)) - fraction(Y, 1, b, HALFUP))
237+ let ar = (an + aq)
238+ let as = (((((n + "_") + ae) + "_") + toBase58String(g.transactionId)) + "_locked")
239+[Reissue(fromBase58String(ag), aq, true), ScriptTransfer(g.caller, aq, fromBase58String(ag)), IntegerEntry(as, aq), IntegerEntry(ad, ap), IntegerEntry(af, ar)]
215240 }
216241 }
217242 }
219244
220245
221246 @Callable(g)
222-func withdraw (n,U) = if ((0 >= U))
223- then throw(("Deposit amount must be positive. Actual: " + toString(U)))
247+func withdraw (n,Y) = if ((0 >= Y))
248+ then throw(("Deposit amount must be positive. Actual: " + toString(Y)))
224249 else {
225- let Z = (n + "_asset_balance")
226- let aa = toString(g.caller)
227- let ab = (((n + "_") + aa) + "_asset_balance")
228- let ac = {
229- let X = getString((n + "_service_token"))
230- if ($isInstanceOf(X, "String"))
250+ let ad = (n + "_asset_balance")
251+ let ae = toString(g.caller)
252+ let af = (((n + "_") + ae) + "_asset_balance")
253+ let ag = {
254+ let ab = getString((n + "_service_token"))
255+ if ($isInstanceOf(ab, "String"))
231256 then {
232- let ad = X
233- ad
257+ let ah = ab
258+ ah
234259 }
235260 else {
236- let ae = X
261+ let ai = ab
237262 throw("You try to withdraw from unsupported pool")
238263 }
239264 }
240- let af = {
241- let X = getString((n + "_liquidity_token"))
242- if ($isInstanceOf(X, "String"))
265+ let aj = {
266+ let ab = getString((n + "_liquidity_token"))
267+ if ($isInstanceOf(ab, "String"))
243268 then {
244- let ad = X
245- ad
269+ let ah = ab
270+ ah
246271 }
247272 else {
248- let ae = X
273+ let ai = ab
249274 throw("You try to withdraw from unsupported pool")
250275 }
251276 }
252- let ai = getIntegerValue(this, Z)
253- let aj = {
254- let X = getInteger(ab)
255- if ($isInstanceOf(X, "Int"))
277+ let am = getIntegerValue(this, ad)
278+ let an = {
279+ let ab = getInteger(af)
280+ if ($isInstanceOf(ab, "Int"))
256281 then {
257- let ak = X
258- ak
282+ let ao = ab
283+ ao
259284 }
260285 else {
261- let ae = X
286+ let ai = ab
262287 0
263288 }
264289 }
265- let ap = ((U - fraction(U, 1, c, HALFUP)) - fraction(U, 1, b, HALFUP))
266- let al = (ai - ap)
267- if ((aj >= U))
290+ let at = ((Y - fraction(Y, 1, c, HALFUP)) - fraction(Y, 1, b, HALFUP))
291+ let ap = (am - at)
292+ if ((an >= Y))
268293 then {
269- let an = (aj - U)
270-[Burn(fromBase58String(ac), ap), ScriptTransfer(g.caller, ap, fromBase58String(af)), IntegerEntry(Z, al), IntegerEntry(ab, an)]
294+ let ar = (an - Y)
295+[Burn(fromBase58String(ag), at), ScriptTransfer(g.caller, at, fromBase58String(aj)), IntegerEntry(ad, ap), IntegerEntry(af, ar)]
271296 }
272297 else throw("You have not such balance for withdraw")
273298 }
274299
275300
276-@Verifier(aq)
277-func ar () = sigVerify(aq.bodyBytes, aq.proofs[0], aq.senderPublicKey)
301+@Verifier(au)
302+func av () = sigVerify(au.bodyBytes, au.proofs[0], au.senderPublicKey)
278303
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 1000
55
66 let b = 10000
77
88 let c = 10000
99
1010 let d = base58'68Po1k24uP6goKr7RDmXPg4QkMiKuyTMEirao14rif8s'
1111
1212 let e = base58'68Po1k24uP6goKr7RDmXPg4QkMiKuyTMEirao14rif8s'
1313
1414 let f = base58'68Po1k24uP6goKr7RDmXPg4QkMiKuyTMEirao14rif8s'
1515
1616 @Callable(g)
1717 func addPools (h,i,j,k) = if (containsElement([d, e, f], g.callerPublicKey))
1818 then {
1919 func l (m,n) = IntegerEntry((n + "_asset_balance"), 0) :: m
2020
2121 func o (m,n) = {
2222 let p = value(indexOf(h, n))
2323 let q = i[p]
2424 StringEntry((n + "_liquidity_token"), q) :: m
2525 }
2626
2727 func r (m,n) = {
2828 let p = value(indexOf(h, n))
2929 let q = j[p]
3030 StringEntry((n + "_service_token"), q) :: m
3131 }
3232
3333 func s (m,n) = {
3434 let p = value(indexOf(h, n))
3535 let q = k[p]
3636 IntegerEntry((n + "_service_token"), q) :: m
3737 }
3838
3939 func t (m,n) = BooleanEntry((n + "_active"), true) :: m
4040
4141 let u = {
4242 let v = h
4343 let w = size(v)
4444 let x = nil
4545 func y (z,A) = if ((A >= w))
4646 then z
4747 else l(z, v[A])
4848
4949 func B (z,A) = if ((A >= w))
5050 then z
5151 else throw("List size exceeds 20")
5252
5353 B(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
5454 }
5555 let C = {
5656 let v = h
5757 let w = size(v)
5858 let x = nil
5959 func y (z,A) = if ((A >= w))
6060 then z
6161 else o(z, v[A])
6262
6363 func B (z,A) = if ((A >= w))
6464 then z
6565 else throw("List size exceeds 20")
6666
6767 B(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
6868 }
6969 let D = {
7070 let v = h
7171 let w = size(v)
7272 let x = nil
7373 func y (z,A) = if ((A >= w))
7474 then z
7575 else r(z, v[A])
7676
7777 func B (z,A) = if ((A >= w))
7878 then z
7979 else throw("List size exceeds 20")
8080
8181 B(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
8282 }
8383 let E = {
8484 let v = h
8585 let w = size(v)
8686 let x = nil
8787 func y (z,A) = if ((A >= w))
8888 then z
8989 else s(z, v[A])
9090
9191 func B (z,A) = if ((A >= w))
9292 then z
9393 else throw("List size exceeds 20")
9494
9595 B(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
9696 }
9797 let F = {
9898 let v = h
9999 let w = size(v)
100100 let x = nil
101101 func y (z,A) = if ((A >= w))
102102 then z
103103 else t(z, v[A])
104104
105105 func B (z,A) = if ((A >= w))
106106 then z
107107 else throw("List size exceeds 20")
108108
109109 B(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
110110 }
111111 ((((u ++ C) ++ D) ++ E) ++ F)
112112 }
113113 else throw("Only admin can call this function")
114114
115115
116116
117117 @Callable(g)
118-func issueToken (G,H,I,J) = if (containsElement([d, e, f], g.callerPublicKey))
119- then [Issue(G, H, I, J, true, unit, 0)]
118+func deleteDepositLockRecord (G) = if (containsElement([d, e, f], g.callerPublicKey))
119+ then {
120+ func H (m,I) = DeleteEntry((I + "_locked")) :: m
121+
122+ let J = {
123+ let v = G
124+ let w = size(v)
125+ let x = nil
126+ func y (z,A) = if ((A >= w))
127+ then z
128+ else H(z, v[A])
129+
130+ func B (z,A) = if ((A >= w))
131+ then z
132+ else throw("List size exceeds 100")
133+
134+ B(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
135+ }
136+ J
137+ }
120138 else throw("Only admin can call this function")
121139
122140
123141
124-@Callable(K)
142+@Callable(g)
143+func issueToken (K,L,M,N) = if (containsElement([d, e, f], g.callerPublicKey))
144+ then [Issue(K, L, M, N, true, unit, 0)]
145+ else throw("Only admin can call this function")
146+
147+
148+
149+@Callable(O)
125150 func call () = {
126- let L = 10
127- let M = 1
128- let N = 8
129- let O = 6
130- let P = ((N + O) / 2)
131- let Q = pow(L, N, 5, 1, N, DOWN)
132- let R = pow(M, O, 5, 1, O, DOWN)
133- let S = pow(10, 0, P, 0, 0, DOWN)
134- let T = fraction(Q, R, S)
135-[IntegerEntry("fisrt", Q), IntegerEntry("second", R), IntegerEntry("third", S), IntegerEntry("fouth", T)]
151+ let P = 10
152+ let Q = 1
153+ let R = 8
154+ let S = 6
155+ let T = ((R + S) / 2)
156+ let U = pow(P, R, 5, 1, R, DOWN)
157+ let V = pow(Q, S, 5, 1, S, DOWN)
158+ let W = pow(10, 0, T, 0, 0, DOWN)
159+ let X = fraction(U, V, W)
160+[IntegerEntry("fisrt", U), IntegerEntry("second", V), IntegerEntry("third", W), IntegerEntry("fouth", X)]
136161 }
137162
138163
139164
140165 @Callable(g)
141166 func deposit (n) = if ((size(g.payments) != 1))
142167 then throw("One attached payment expected")
143168 else {
144- let U = g.payments[0].amount
145- let V = g.payments[0].assetId
146- let W = {
147- let X = V
148- if ($isInstanceOf(X, "ByteVector"))
169+ let Y = g.payments[0].amount
170+ let Z = g.payments[0].assetId
171+ let aa = {
172+ let ab = Z
173+ if ($isInstanceOf(ab, "ByteVector"))
149174 then {
150- let Y = X
151- toBase58String(Y)
175+ let ac = ab
176+ toBase58String(ac)
152177 }
153178 else throw("Match error")
154179 }
155- if ((0 >= U))
156- then throw(("Deposit amount must be positive. Actual: " + toString(U)))
180+ if ((0 >= Y))
181+ then throw(("Deposit amount must be positive. Actual: " + toString(Y)))
157182 else {
158- let Z = (n + "_asset_balance")
159- let aa = toString(g.caller)
160- let ab = (((n + "_") + aa) + "_asset_balance")
161- let ac = {
162- let X = getString((n + "_service_token"))
163- if ($isInstanceOf(X, "String"))
183+ let ad = (n + "_asset_balance")
184+ let ae = toString(g.caller)
185+ let af = (((n + "_") + ae) + "_asset_balance")
186+ let ag = {
187+ let ab = getString((n + "_service_token"))
188+ if ($isInstanceOf(ab, "String"))
164189 then {
165- let ad = X
166- ad
190+ let ah = ab
191+ ah
167192 }
168193 else {
169- let ae = X
194+ let ai = ab
170195 throw("You try to deposit on unsupported pool")
171196 }
172197 }
173- let af = {
174- let X = getString((n + "_liquidity_token"))
175- if ($isInstanceOf(X, "String"))
198+ let aj = {
199+ let ab = getString((n + "_liquidity_token"))
200+ if ($isInstanceOf(ab, "String"))
176201 then {
177- let ad = X
178- ad
202+ let ah = ab
203+ ah
179204 }
180205 else {
181- let ae = X
206+ let ai = ab
182207 throw("You try to deposit on unsupported pool")
183208 }
184209 }
185- let ag = {
186- let X = assetInfo(fromBase58String(af))
187- if ($isInstanceOf(X, "Asset"))
210+ let ak = {
211+ let ab = assetInfo(fromBase58String(aj))
212+ if ($isInstanceOf(ab, "Asset"))
188213 then {
189- let ah = X
190- ah.decimals
214+ let al = ab
215+ al.decimals
191216 }
192217 else throw("Can't find asset")
193218 }
194- if ((af != W))
219+ if ((aj != aa))
195220 then throw("You attached wrong liquidity token from Swop.fi")
196221 else {
197- let ai = getIntegerValue(this, Z)
198- let aj = {
199- let X = getInteger(ab)
200- if ($isInstanceOf(X, "Int"))
222+ let am = getIntegerValue(this, ad)
223+ let an = {
224+ let ab = getInteger(af)
225+ if ($isInstanceOf(ab, "Int"))
201226 then {
202- let ak = X
203- ak
227+ let ao = ab
228+ ao
204229 }
205230 else {
206- let ae = X
231+ let ai = ab
207232 0
208233 }
209234 }
210- let al = (ai + U)
211- let am = ((U - fraction(U, 1, a, HALFUP)) - fraction(U, 1, b, HALFUP))
212- let an = (aj + am)
213- let ao = (((((n + "_") + aa) + "_") + toBase58String(g.transactionId)) + "_locked")
214-[Reissue(fromBase58String(ac), am, true), ScriptTransfer(g.caller, am, fromBase58String(ac)), IntegerEntry(ao, am), IntegerEntry(Z, al), IntegerEntry(ab, an)]
235+ let ap = (am + Y)
236+ let aq = ((Y - fraction(Y, 1, a, HALFUP)) - fraction(Y, 1, b, HALFUP))
237+ let ar = (an + aq)
238+ let as = (((((n + "_") + ae) + "_") + toBase58String(g.transactionId)) + "_locked")
239+[Reissue(fromBase58String(ag), aq, true), ScriptTransfer(g.caller, aq, fromBase58String(ag)), IntegerEntry(as, aq), IntegerEntry(ad, ap), IntegerEntry(af, ar)]
215240 }
216241 }
217242 }
218243
219244
220245
221246 @Callable(g)
222-func withdraw (n,U) = if ((0 >= U))
223- then throw(("Deposit amount must be positive. Actual: " + toString(U)))
247+func withdraw (n,Y) = if ((0 >= Y))
248+ then throw(("Deposit amount must be positive. Actual: " + toString(Y)))
224249 else {
225- let Z = (n + "_asset_balance")
226- let aa = toString(g.caller)
227- let ab = (((n + "_") + aa) + "_asset_balance")
228- let ac = {
229- let X = getString((n + "_service_token"))
230- if ($isInstanceOf(X, "String"))
250+ let ad = (n + "_asset_balance")
251+ let ae = toString(g.caller)
252+ let af = (((n + "_") + ae) + "_asset_balance")
253+ let ag = {
254+ let ab = getString((n + "_service_token"))
255+ if ($isInstanceOf(ab, "String"))
231256 then {
232- let ad = X
233- ad
257+ let ah = ab
258+ ah
234259 }
235260 else {
236- let ae = X
261+ let ai = ab
237262 throw("You try to withdraw from unsupported pool")
238263 }
239264 }
240- let af = {
241- let X = getString((n + "_liquidity_token"))
242- if ($isInstanceOf(X, "String"))
265+ let aj = {
266+ let ab = getString((n + "_liquidity_token"))
267+ if ($isInstanceOf(ab, "String"))
243268 then {
244- let ad = X
245- ad
269+ let ah = ab
270+ ah
246271 }
247272 else {
248- let ae = X
273+ let ai = ab
249274 throw("You try to withdraw from unsupported pool")
250275 }
251276 }
252- let ai = getIntegerValue(this, Z)
253- let aj = {
254- let X = getInteger(ab)
255- if ($isInstanceOf(X, "Int"))
277+ let am = getIntegerValue(this, ad)
278+ let an = {
279+ let ab = getInteger(af)
280+ if ($isInstanceOf(ab, "Int"))
256281 then {
257- let ak = X
258- ak
282+ let ao = ab
283+ ao
259284 }
260285 else {
261- let ae = X
286+ let ai = ab
262287 0
263288 }
264289 }
265- let ap = ((U - fraction(U, 1, c, HALFUP)) - fraction(U, 1, b, HALFUP))
266- let al = (ai - ap)
267- if ((aj >= U))
290+ let at = ((Y - fraction(Y, 1, c, HALFUP)) - fraction(Y, 1, b, HALFUP))
291+ let ap = (am - at)
292+ if ((an >= Y))
268293 then {
269- let an = (aj - U)
270-[Burn(fromBase58String(ac), ap), ScriptTransfer(g.caller, ap, fromBase58String(af)), IntegerEntry(Z, al), IntegerEntry(ab, an)]
294+ let ar = (an - Y)
295+[Burn(fromBase58String(ag), at), ScriptTransfer(g.caller, at, fromBase58String(aj)), IntegerEntry(ad, ap), IntegerEntry(af, ar)]
271296 }
272297 else throw("You have not such balance for withdraw")
273298 }
274299
275300
276-@Verifier(aq)
277-func ar () = sigVerify(aq.bodyBytes, aq.proofs[0], aq.senderPublicKey)
301+@Verifier(au)
302+func av () = sigVerify(au.bodyBytes, au.proofs[0], au.senderPublicKey)
278303

github/deemru/w8io/169f3d6 
80.93 ms