tx · 2CFoF9fYGsUPz9S28qn443bm8Wa5ont8M9BiqMiNJ9Xr

3PEhGDwvjrjVKRPv5kHkjfDLmBJK1dd2frT:  -0.01900000 Waves

2022.09.03 03:25 [3277731] smart account 3PEhGDwvjrjVKRPv5kHkjfDLmBJK1dd2frT > SELF 0.00000000 Waves

{ "type": 13, "id": "2CFoF9fYGsUPz9S28qn443bm8Wa5ont8M9BiqMiNJ9Xr", "fee": 1900000, "feeAssetId": null, "timestamp": 1662164753057, "version": 2, "chainId": 87, "sender": "3PEhGDwvjrjVKRPv5kHkjfDLmBJK1dd2frT", "senderPublicKey": "BjDUSXyo3yUJSxVFdH2pYANz31E6xzH7rdyYLBMRvHE2", "proofs": [ "54Wc5KrjyTwgCP3BWE48pBuHJJ4Ra1ZsJQ1uRResX39Eu53m2nZNm3PrYzAaTqH8XPZFBQWVFMpMz97F8dqwGPKe" ], "script": "base64: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BXNSYXRlBAAAAAVzUmF0ZQgFAAAACyR0MDQ1NDI0NjA5AAAAAl8xBAAAABFyYXRlc1JlY2FsY1Jlc3VsdAgFAAAACyR0MDQ1NDI0NjA5AAAAAl8yBAAAAAZhbW91bnQJAABrAAAAAwUAAAALYXNzZXRBbW91bnQFAAAAB1NjYWxlMTYFAAAABXNSYXRlBAAAAAdhZGRyZXNzCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAANYXNzZXRTdXBwbGllZAkBAAAADXRyeUdldEludGVnZXIAAAABCQABLAAAAAICAAAAD3RvdGFsX3N1cHBsaWVkXwUAAAAKYXNzZXRJZFN0cgQAAAANYXNzZXRCb3Jyb3dlZAkBAAAADXRyeUdldEludGVnZXIAAAABCQABLAAAAAICAAAAD3RvdGFsX2JvcnJvd2VkXwUAAAAKYXNzZXRJZFN0cgQAAAARdXNlckFzc2V0U3VwcGxpZWQJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQkAASwAAAACCQABLAAAAAIFAAAAB2FkZHJlc3MCAAAACl9zdXBwbGllZF8FAAAACmFzc2V0SWRTdHIEAAAAEXVzZXJBc3NldEJvcnJvd2VkCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAAEsAAAAAgkAASwAAAACBQAAAAdhZGRyZXNzAgAAAApfYm9ycm93ZWRfBQAAAAphc3NldElkU3RyAwkBAAAAASEAAAABCQEAAAANdHJ5R2V0Qm9vbGVhbgAAAAECAAAADHNldHVwX2FjdGl2ZQkAAAIAAAABAgAAABFtYXJrZXQgaXMgc3RvcHBlZAMJAABmAAAAAgUAAAAGYW1vdW50CQAAZQAAAAIFAAAADWFzc2V0U3VwcGxpZWQFAAAADWFzc2V0Qm9ycm93ZWQJAAACAAAAAQIAAAAqdGhpcyBhbW91bnQgaXMgbm90IGF2YWlsYWJsZSBvbiB0aGUgbWFya2V0AwkAAGYAAAACBQAAAAZhbW91bnQJAABlAAAAAgUAAAARdXNlckFzc2V0U3VwcGxpZWQFAAAAEXVzZXJBc3NldEJvcnJvd2VkCQAAAgAAAAECAAAAKnRoaXMgYW1vdW50IGlzIG5vdCBhdmFpbGFibGUgZm9yIHRoaXMgdXNlcgkABE4AAAACCQAETAAAAAIJAQAA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MzczOTAAAAACXzEEAAAAEXJhdGVzUmVjYWxjUmVzdWx0CAUAAAALJHQwNzMyMzczOTAAAAACXzIEAAAABmFtb3VudAkAAGsAAAADBQAAAAthc3NldEFtb3VudAUAAAAHU2NhbGUxNgUAAAAFYlJhdGUEAAAAB2FkZHJlc3MJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBAAAAA1hc3NldFN1cHBsaWVkCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAAEsAAAAAgIAAAAPdG90YWxfc3VwcGxpZWRfBQAAAAphc3NldElkU3RyBAAAAA1hc3NldEJvcnJvd2VkCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEJAAEsAAAAAgIAAAAPdG90YWxfYm9ycm93ZWRfBQAAAAphc3NldElkU3RyBAAAABF1c2VyQXNzZXRCb3Jyb3dlZAkBAAAADXRyeUdldEludGVnZXIAAAABCQABLAAAAAIJAAEsAAAAAgUAAAAHYWRkcmVzcwIAAAAKX2JvcnJvd2VkXwUAAAAKYXNzZXRJZFN0cgMJAAAAAAAAAgkABLMAAAACCQEAAAAMdHJ5R2V0U3RyaW5nAAAAAQIAAAAMc2V0dXBfdG9rZW5zBQAAAAphc3NldElkU3RyBQAAAAR1bml0CQAAAgAAAAECAAAAKXRoaXMgYXNzZXQgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgbWFya2V0AwkAAGYAAAACBQAAAAZhbW91bnQFAAAAEXVzZXJBc3NldEJvcnJvd2VkCQAAAgAAAAECAAAAMnBheWVkIGFtb3VudCBpcyBiaWdnZXIgdGhhbiB1c2VyJ3MgYm9ycm93ZWQgYW1vdW50CQAETgAAAAIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAdhZGRyZXNzAgAAAApfYm9ycm93ZWRfBQAAAAphc3NldElkU3RyCQAAZQAAAAIFAAAAEXVzZXJBc3NldEJvcnJvd2VkBQAAAAZhbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAPdG90YWxfYm9ycm93ZWRfBQAAAAphc3NldElkU3RyCQAAZQAAAAIFAAAADWFzc2V0Qm9ycm93ZWQFAAAA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", "height": 3277731, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Hk1QfMJW8SM95G5F5naXfbrY79bzSp7MG6zi1qztNJRH Next: GZfg9wTpmvyBrhxqGYBVpSZE5QXPu5i7pgzQk1AsVNh Diff:
OldNewDifferences
130130 then $Tuple2(15000000, 15000000)
131131 else if ((n == "WAVES"))
132132 then $Tuple2(5000000, 5000000)
133- else $Tuple2(1000000, 1000000)
133+ else if ((n == "Ajso6nTTjptu2UHLx6hfSXVtHFtRBJCkKYd5SAyj7zf5"))
134+ then $Tuple2(2000000, 2000000)
135+ else if ((n == "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ"))
136+ then $Tuple2(1000000, 1000000)
137+ else if ((n == "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ"))
138+ then $Tuple2(1000000, 1000000)
139+ else $Tuple2(950000, 950000)
134140
135141
136142 @Callable(P)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 100000000
55
66 let b = 10000000000
77
88 let c = (a * a)
99
1010 let d = 1440
1111
1212 func e (f) = {
1313 let g = getInteger(this, f)
1414 if ($isInstanceOf(g, "Int"))
1515 then {
1616 let h = g
1717 h
1818 }
1919 else 0
2020 }
2121
2222
2323 func i (f) = {
2424 let g = getBoolean(this, f)
2525 if ($isInstanceOf(g, "Boolean"))
2626 then {
2727 let h = g
2828 h
2929 }
3030 else false
3131 }
3232
3333
3434 func j (f) = {
3535 let g = getString(this, f)
3636 if ($isInstanceOf(g, "String"))
3737 then {
3838 let h = g
3939 h
4040 }
4141 else ""
4242 }
4343
4444
4545 func k (l) = {
4646 let g = l
4747 if ($isInstanceOf(g, "ByteVector"))
4848 then {
4949 let h = g
5050 toBase58String(h)
5151 }
5252 else "WAVES"
5353 }
5454
5555
5656 func m (n) = if ((n == "WAVES"))
5757 then unit
5858 else fromBase58String(n)
5959
6060
6161 func o () = split(j("setup_tokens"), ",")
6262
6363
6464 func p (n) = toInt(fraction(toBigInt(a), (toBigInt(e(("total_borrowed_" + n))) * toBigInt(e((n + "_bRate")))), (toBigInt(e(("total_supplied_" + n))) * toBigInt(e((n + "_sRate"))))))
6565
6666
6767 func q (n) = {
6868 let r = p(n)
6969 let s = e("setup_interest")
7070 max([(fraction(s, r, d) / a), 1])
7171 }
7272
7373
7474 func t (n) = {
7575 let u = q(n)
7676 let r = p(n)
7777 let v = e("lastRateHeight")
7878 let w = e((n + "_bRate"))
7979 let x = (w + ((height - v) * u))
8080 let y = e((n + "_sRate"))
8181 let z = (y + ((height - v) * fraction(u, r, a)))
8282 [IntegerEntry((n + "_sRate"), z), IntegerEntry((n + "_bRate"), x), IntegerEntry("lastRateHeight", height)]
8383 }
8484
8585
8686 func A (n,B) = {
8787 func C (D,E) = {
8888 let F = t(E)
8989 $Tuple2(if ((E != n))
9090 then D._1
9191 else if ((B == "sRate"))
9292 then F[0].value
9393 else F[1].value, (D._2 ++ F))
9494 }
9595
9696 let G = o()
9797 let H = size(G)
9898 let I = $Tuple2(0, nil)
9999 func J (K,L) = if ((L >= H))
100100 then K
101101 else C(K, G[L])
102102
103103 func M (K,L) = if ((L >= H))
104104 then K
105105 else throw("List size exceeds 6")
106106
107107 M(J(J(J(J(J(J(I, 0), 1), 2), 3), 4), 5), 6)
108108 }
109109
110110
111111 func N () = {
112112 func C (D,E) = (D ++ t(E))
113113
114114 let G = o()
115115 let H = size(G)
116116 let I = nil
117117 func J (K,L) = if ((L >= H))
118118 then K
119119 else C(K, G[L])
120120
121121 func M (K,L) = if ((L >= H))
122122 then K
123123 else throw("List size exceeds 6")
124124
125125 M(J(J(J(J(J(J(I, 0), 1), 2), 3), 4), 5), 6)
126126 }
127127
128128
129129 func O (n) = if ((n == "HEB8Qaw9xrWpWs8tHsiATYGBWDBtP2S7kcPALrMu43AS"))
130130 then $Tuple2(15000000, 15000000)
131131 else if ((n == "WAVES"))
132132 then $Tuple2(5000000, 5000000)
133- else $Tuple2(1000000, 1000000)
133+ else if ((n == "Ajso6nTTjptu2UHLx6hfSXVtHFtRBJCkKYd5SAyj7zf5"))
134+ then $Tuple2(2000000, 2000000)
135+ else if ((n == "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ"))
136+ then $Tuple2(1000000, 1000000)
137+ else if ((n == "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ"))
138+ then $Tuple2(1000000, 1000000)
139+ else $Tuple2(950000, 950000)
134140
135141
136142 @Callable(P)
137143 func preInit (Q,R,S) = {
138144 func C (D,E) = (D ++ [IntegerEntry((E + "_bRate"), c), IntegerEntry((E + "_sRate"), c)])
139145
140146 let T = {
141147 let G = split(Q, ",")
142148 let H = size(G)
143149 let I = nil
144150 func J (K,L) = if ((L >= H))
145151 then K
146152 else C(K, G[L])
147153
148154 func M (K,L) = if ((L >= H))
149155 then K
150156 else throw("List size exceeds 6")
151157
152158 M(J(J(J(J(J(J(I, 0), 1), 2), 3), 4), 5), 6)
153159 }
154160 ([StringEntry("setup_tokens", Q), StringEntry("setup_ltvs", R), IntegerEntry("setup_interest", S), BooleanEntry("setup_active", true)] ++ T)
155161 }
156162
157163
158164
159165 @Callable(P)
160166 func supply () = if (!(i("setup_active")))
161167 then throw("market is stopped")
162168 else if (if ((size(P.payments) != 1))
163169 then true
164170 else (P.payments[0].amount == 0))
165171 then throw("1 payment has to be attached")
166172 else {
167173 let n = k(P.payments[0].assetId)
168174 let U = P.payments[0].amount
169175 let V = A(n, "sRate")
170176 let W = V._1
171177 let X = V._2
172178 let Y = fraction(U, c, W)
173179 let Z = toString(P.caller)
174180 if ((indexOf(j("setup_tokens"), n) == unit))
175181 then throw("this asset is not supported by the market")
176182 else ([IntegerEntry(((Z + "_supplied_") + n), (e(((Z + "_supplied_") + n)) + Y)), IntegerEntry(("total_supplied_" + n), (e(("total_supplied_" + n)) + Y))] ++ X)
177183 }
178184
179185
180186
181187 @Callable(P)
182188 func withdraw (n,U) = {
183189 let aa = A(n, "sRate")
184190 let W = aa._1
185191 let X = aa._2
186192 let Y = fraction(U, c, W)
187193 let Z = toString(P.caller)
188194 let ab = e(("total_supplied_" + n))
189195 let ac = e(("total_borrowed_" + n))
190196 let ad = e(((Z + "_supplied_") + n))
191197 let ae = e(((Z + "_borrowed_") + n))
192198 if (!(i("setup_active")))
193199 then throw("market is stopped")
194200 else if ((Y > (ab - ac)))
195201 then throw("this amount is not available on the market")
196202 else if ((Y > (ad - ae)))
197203 then throw("this amount is not available for this user")
198204 else ([IntegerEntry(((Z + "_supplied_") + n), (e(((Z + "_supplied_") + n)) - Y)), IntegerEntry(("total_supplied_" + n), (e(("total_supplied_" + n)) - Y)), ScriptTransfer(P.caller, Y, m(n))] ++ X)
199205 }
200206
201207
202208
203209 @Callable(P)
204210 func borrow (n,U) = {
205211 let Z = toString(P.caller)
206212 let af = A(n, "bRate")
207213 let ag = af._1
208214 let X = af._2
209215 let Y = fraction(U, c, ag)
210216 let ah = O(n)._2
211217 let ai = pow(10, 0, value(assetInfo(fromBase58String(n))).decimals, 0, 0, DOWN)
212218 let aj = fraction(Y, ah, ai)
213219 let ak = invoke(this, "getUserCollateral", [false, Z, true], nil)
214220 if ((ak == ak))
215221 then {
216222 let al = {
217223 let g = ak
218224 if ($isInstanceOf(g, "Int"))
219225 then {
220226 let am = g
221227 am
222228 }
223229 else throw("can't get user collateral value")
224230 }
225231 if ((aj > al))
226232 then throw("you have to supply more to borrow")
227233 else {
228234 let ab = e(("total_supplied_" + n))
229235 let ac = e(("total_borrowed_" + n))
230236 let ae = e(((Z + "_borrowed_") + n))
231237 if ((Y > (ab - ac)))
232238 then throw("this amount is not available")
233239 else ([IntegerEntry(((Z + "_borrowed_") + n), (ae + Y)), IntegerEntry(("total_borrowed_" + n), (ac + Y)), ScriptTransfer(P.caller, Y, m(n))] ++ X)
234240 }
235241 }
236242 else throw("Strict value is not equal to itself.")
237243 }
238244
239245
240246
241247 @Callable(P)
242248 func repay () = if (!(i("setup_active")))
243249 then throw("market is stopped")
244250 else if (if ((size(P.payments) != 1))
245251 then true
246252 else (P.payments[0].amount == 0))
247253 then throw("1 payment has to be attached")
248254 else {
249255 let n = k(P.payments[0].assetId)
250256 let U = P.payments[0].amount
251257 let an = A(n, "bRate")
252258 let ag = an._1
253259 let X = an._2
254260 let Y = fraction(U, c, ag)
255261 let Z = toString(P.caller)
256262 let ab = e(("total_supplied_" + n))
257263 let ac = e(("total_borrowed_" + n))
258264 let ae = e(((Z + "_borrowed_") + n))
259265 if ((indexOf(j("setup_tokens"), n) == unit))
260266 then throw("this asset is not supported by the market")
261267 else if ((Y > ae))
262268 then throw("payed amount is bigger than user's borrowed amount")
263269 else ([IntegerEntry(((Z + "_borrowed_") + n), (ae - Y)), IntegerEntry(("total_borrowed_" + n), (ac - Y))] ++ X)
264270 }
265271
266272
267273
268274 @Callable(P)
269275 func calculateUtilizationRatio (n,ao) = if (ao)
270276 then throw(toString(p(n)))
271277 else $Tuple2(nil, p(n))
272278
273279
274280
275281 @Callable(P)
276282 func calculateTokenRates (ao) = {
277283 func C (D,n) = {
278284 let T = t(n)
279285 ((((D + toString(T[1].value)) + "|") + toString(T[0].value)) + ",")
280286 }
281287
282288 let ap = {
283289 let G = o()
284290 let H = size(G)
285291 let I = ""
286292 func J (K,L) = if ((L >= H))
287293 then K
288294 else C(K, G[L])
289295
290296 func M (K,L) = if ((L >= H))
291297 then K
292298 else throw("List size exceeds 6")
293299
294300 M(J(J(J(J(J(J(I, 0), 1), 2), 3), 4), 5), 6)
295301 }
296302 if (ao)
297303 then throw(ap)
298304 else $Tuple2(nil, ap)
299305 }
300306
301307
302308
303309 @Callable(P)
304310 func calculateTokensInterest (ao) = {
305311 let s = e("setup_interest")
306312 func C (D,n) = {
307313 let r = p(n)
308314 let aq = max([fraction(s, r, a), d])
309315 ((D + toString(aq)) + ",")
310316 }
311317
312318 let ap = {
313319 let G = o()
314320 let H = size(G)
315321 let I = ""
316322 func J (K,L) = if ((L >= H))
317323 then K
318324 else C(K, G[L])
319325
320326 func M (K,L) = if ((L >= H))
321327 then K
322328 else throw("List size exceeds 6")
323329
324330 M(J(J(J(J(J(J(I, 0), 1), 2), 3), 4), 5), 6)
325331 }
326332 if (ao)
327333 then throw(ap)
328334 else $Tuple2(nil, ap)
329335 }
330336
331337
332338
333339 @Callable(P)
334340 func getUserCollateral (ao,Z,ar) = {
335341 let as = o()
336342 let R = split(j("setup_ltvs"), ",")
337343 let T = A(as[0], "sRate")._2
338344 func C (D,at) = if ((at >= size(as)))
339345 then D
340346 else {
341347 let ai = pow(10, 0, value(assetInfo(fromBase58String(as[at]))).decimals, 0, 0, DOWN)
342348 let au = O(as[at])
343349 ((D + fraction(fraction(fraction(e(((Z + "_supplied_") + as[at])), T[(at * 3)].value, c), parseIntValue(R[at]), a), au._1, ai)) - (if (ar)
344350 then fraction(fraction(e(((Z + "_borrowed_") + as[at])), T[((at * 3) + 1)].value, c), au._2, ai)
345351 else 0))
346352 }
347353
348354 let av = {
349355 let G = [0, 1, 2, 3, 4, 5]
350356 let H = size(G)
351357 let I = 0
352358 func J (K,L) = if ((L >= H))
353359 then K
354360 else C(K, G[L])
355361
356362 func M (K,L) = if ((L >= H))
357363 then K
358364 else throw("List size exceeds 6")
359365
360366 M(J(J(J(J(J(J(I, 0), 1), 2), 3), 4), 5), 6)
361367 }
362368 if (ao)
363369 then throw(toString(av))
364370 else $Tuple2(T, av)
365371 }
366372
367373
368374 @Verifier(aw)
369375 func ax () = sigVerify(aw.bodyBytes, aw.proofs[0], aw.senderPublicKey)
370376

github/deemru/w8io/3ef1775 
42.77 ms