tx · DGjpaAzVYqE9o83dBX53pnu6vU3D9q2P1gZfi88eJkLD

3N9eLqWNqb7jeF383m9qsXEBqpp8qfQmfbx:  -0.01400000 Waves

2022.06.07 14:24 [2085882] smart account 3N9eLqWNqb7jeF383m9qsXEBqpp8qfQmfbx > SELF 0.00000000 Waves

{ "type": 13, "id": "DGjpaAzVYqE9o83dBX53pnu6vU3D9q2P1gZfi88eJkLD", "fee": 1400000, "feeAssetId": null, "timestamp": 1654601102422, "version": 2, "chainId": 84, "sender": "3N9eLqWNqb7jeF383m9qsXEBqpp8qfQmfbx", "senderPublicKey": "5cWdpE4X7mfNkLmxJ389ws6qGZof4fwydqMcqPexhJ7w", "proofs": [ "27Da8o3kZnZnXFaM9bZmDTRCXUVtQh1CLwfbxxt1sR2qu3w9kvrJFnWAjVcqzzCjRBqNybYKhh2QBvNiHhWcEWCQ" ], "script": "base64:AAIFAAAAAAAAAEkIAhIHCgUICAgBARIDCgEIEgMKAQgSAwoBCBIDCgEIEgMKAQgSAwoBCBIDCgEIEgMKAQgSBAoCCAkSAwoBCBIECgIBCBIDCgEIAAAAIwAAAAAMbG9ja2luZ1N0b3JlBQAAAAR0aGlzAAAAAAxzdGFraW5nU3RvcmUCAAAACF9SZXNlcnZlAAAAABFtaW5pbXVtTG9ja0Ftb3VudAIAAAAOX01pbkxvY2tBbW91bnQAAAAAEW1heGltdW1Mb2NrQW1vdW50AgAAAA5fTWF4TG9ja0Ftb3VudAAAAAAJYXNzZXRMaXN0BQAAAANuaWwAAAAAEXVubG9ja0VsaWdpYmlsaXR5AgAAABxfRWxpZ2libGVfdG9fdW5sb2NrX2F0X2Jsb2NrAAAAAAxsb2NrZWRBbW91bnQCAAAADl9BbW91bnRfbG9ja2VkAAAAAAtsb2NrZWRBc3NldAIAAAANX0Fzc2V0X2xvY2tlZAAAAAAEdXNlcgIAAAAFX1VzZXIAAAAACkFQWV9BbW91bnQCAAAAC19BUFlfYW1vdW50AAAAABF0b3RhbExvY2tlZEFNb3VudAIAAAAUX1RvdGFsX0xvY2tlZF9BbW91bnQAAAAADWxvY2tpbmdQZXJpb2QCAAAADF9EYXlzX2xvY2tlZAAAAAAKZW50cnlJbmRleAIAAAAMX0VudHJ5X0luZGV4AAAAAA5hbHJlYWR5Q2xhaW1lZAIAAAAQX0FscmVhZHlfQ2xhaW1lZAAAAAAFYWRtaW4CAAAABmFkbWluXwAAAAALQmxvY2tQZXJEYXkAAAAAAAAABaAAAAAAFHRoaXJ0eURheXNMb2NrUGVyaW9kAAAAAAAAAAAeAAAAABNzaXh0eURheXNMb2NrUGVyaW9kAAAAAAAAAAA8AAAAABRuaW5ldHlEYXlzTG9ja1BlcmlvZAAAAAAAAAAAWgEAAAAEZ2V0SQAAAAEAAAADa2V5CQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQEAAAAEZ2V0UwAAAAEAAAADa2V5CQAEHQAAAAIFAAAABHRoaXMFAAAAA2tleQEAAAAFZ2V0SVYAAAABAAAAA2tleQkBAAAABXZhbHVlAAAAAQkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkBAAAABWdldFNWAAAAAQAAAANrZXkJAQAA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AAAFY2hlY2sFAAAABWNoZWNrBAAAAA1hU3Rha2luZ1N0b3JlCQABLAAAAAIFAAAAC0Fzc2V0VGlja2VyBQAAAAxzdGFraW5nU3RvcmUEAAAAEmFNaW5pbXVtTG9ja0Ftb3VudAkAASwAAAACBQAAAAtBc3NldFRpY2tlcgUAAAARbWluaW11bUxvY2tBbW91bnQEAAAAEmFNYXhpbXVtTG9ja0Ftb3VudAkAASwAAAACBQAAAAtBc3NldFRpY2tlcgUAAAARbWF4aW11bUxvY2tBbW91bnQEAAAAC2NoZWNrTWluTWF4AwkAAGYAAAACBQAAABZBc3NldE1heGltdW1Mb2NrQW1vdW50BQAAABZBc3NldE1pbmltdW1Mb2NrQW1vdW50CQAETAAAAAIJAQAAABF3cml0ZUNvbnN0SW50ZWdlcgAAAAIFAAAAEmFNaW5pbXVtTG9ja0Ftb3VudAUAAAAWQXNzZXRNaW5pbXVtTG9ja0Ftb3VudAkABEwAAAACCQEAAAARd3JpdGVDb25zdEludGVnZXIAAAACBQAAABJhTWF4aW11bUxvY2tBbW91bnQFAAAAFkFzc2V0TWF4aW11bUxvY2tBbW91bnQFAAAAA25pbAkABEwAAAACCQEAAAARd3JpdGVDb25zdEludGVnZXIAAAACBQAAABJhTWluaW11bUxvY2tBbW91bnQFAAAAFkFzc2V0TWF4aW11bUxvY2tBbW91bnQJAARMAAAAAgkBAAAAEXdyaXRlQ29uc3RJbnRlZ2VyAAAAAgUAAAASYU1heGltdW1Mb2NrQW1vdW50BQAAABZBc3NldE1pbmltdW1Mb2NrQW1vdW50BQAAAANuaWwJAAROAAAAAgkABEwAAAACCQEAAAAQd3JpdGVDb25zdFN0cmluZwAAAAIFAAAAC0Fzc2V0VGlja2VyBQAAAAdBc3NldElECQAETAAAAAIJAQAAABB3cml0ZUNvbnN0U3RyaW5nAAAAAgUAAAANYVN0YWtpbmdTdG9yZQUAAAAMQXNzZXRSZXNlcnZlBQAAAANuaWwFAAAAC2NoZWNrTWluTWF4CQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAAFpAQAAAAtkZWxldGVBc3NldAAAAAEAAAALQXNzZXRUaWNr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b3Ugd2FudCB0byBsb2NrAwkAAAAAAAACBQAAAAZjaGVjazEFAAAABmNoZWNrMQQAAAAFYXNzZXQJAAJYAAAAAQkBAAAABXZhbHVlAAAAAQgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAHYXNzZXRJZAQAAAAGY2hlY2syCQEAAAAHdGhyb3dJZgAAAAIJAQAAAAIhPQAAAAIJAQAAAARnZXRTAAAAAQUAAAALQXNzZXRUaWNrZXIFAAAABWFzc2V0AgAAABNhc3NldCBub3Qgc3VwcG9ydGVkAwkAAAAAAAACBQAAAAZjaGVjazIFAAAABmNoZWNrMgQAAAAKbG9ja1BlcmlvZAUAAAAKTG9ja1BlcmlvZAQAAAAGdXNlcklkCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAADWFtb3VudFRvU3Rha2UICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAQAAAAKbWluVG9TdGFrZQkBAAAADnRocm93T3JSZXR1cm5JAAAAAgkBAAAABGdldEkAAAABCQABLAAAAAIFAAAAC0Fzc2V0VGlja2VyBQAAABFtaW5pbXVtTG9ja0Ftb3VudAIAAAA1aW50ZXJuYWwgZXJyb3I6IG1pbmltdW0gc3RhY2tpbmcgYW1vdW50IG5vdCBzcGVjaWZpZWQEAAAACm1heFRvU3Rha2UJAQAAAA50aHJvd09yUmV0dXJuSQAAAAIJAQAAAARnZXRJAAAAAQkAASwAAAACBQAAAAtBc3NldFRpY2tlcgUAAAARbWF4aW11bUxvY2tBbW91bnQCAAAANGludGVybmFsIGVycm9yOiBtYXhpbXVtIHN0YWtpbmcgYW1vdW50IG5vdCBzcGVjaWZpZWQEAAAABmNoZWNrMwkBAAAAB3Rocm93SWYAAAACAwkAAGYAAAACBQAAAAptaW5Ub1N0YWtlBQAAAA1hbW91bnRUb1N0YWtlBgkAAGYAAAACBQAAAA1hbW91bnRUb1N0YWtlBQAAAAptYXhUb1N0YWtlAgAAAB5zdGFraW5nIGFtb3VudCBpcyBvdXQgb2YgcmFuZ2UDCQAAAAAAAAIFAAAABmNoZWNrMwUAAAAGY2hlY2szBAAAAAx1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", "height": 2085882, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6F7kn2Bt1cJT5wBhTVCQjrTvCyGtqKs3DWjhCQMWRKfB Next: 2ADPhoV5XAdukfJYhPppSYc4L7EA2pKWhbqzoUKfC13g Diff:
OldNewDifferences
361361 let aQ = y((aP > aM), "you have maxed out your quota")
362362 if ((aQ == aQ))
363363 then {
364- let aR = invoke(Address(fromBase58String(x(o))), "getAPYAmount", [aJ, ab, aK], nil)
365- let aS = {
366- let D = aR
364+ let aB = (((aJ + "_") + ab) + m)
365+ let aR = Z(aB)
366+ let aS = ((("_" + ab) + "_") + toString(aR))
367+ let aT = (i + aS)
368+ let aU = ((aJ + aS) + i)
369+ let aV = ((aJ + aS) + h)
370+ let aW = ((aJ + aS) + l)
371+ let aX = ((aJ + aS) + g)
372+ let aY = ((aJ + aS) + j)
373+ let aC = ((aJ + aS) + f)
374+ let aZ = ((aJ + aS) + n)
375+ let ba = invoke(Address(fromBase58String(x(o))), "getAPYAmount", [aJ, ab, aK], nil)
376+ let bb = {
377+ let D = ba
367378 if ($isInstanceOf(D, "Int"))
368379 then {
369- let aT = D
370- aT
380+ let bc = D
381+ bc
371382 }
372383 else throw(("could not get the APY amount for " + aJ))
373384 }
374- let aB = ((aJ + ab) + m)
375- let aU = Z(aB)
376- let aV = ((("_" + ab) + "_") + toString(aU))
377- let aW = ((aJ + aV) + i)
378- let aX = ((aJ + aV) + h)
379- let aY = ((aJ + aV) + l)
380- let aZ = ((aJ + aV) + g)
381- let ba = ((aJ + aV) + j)
382- let aC = ((aJ + aV) + f)
383- let bb = ((aJ + aV) + n)
384-[P(aB, aU), O(aW, aJ), O(aX, aG), P(aY, aI), P(aZ, R.payments[0].amount), P(aO, aP), P(aC, I(aF)), P(ba, aS), BooleanEntry(bb, false)]
385+[P(aT, aR), O(aU, aJ), O(aV, aG), P(aW, aI), P(aX, R.payments[0].amount), P(aO, aP), P(aC, I(aF)), P(aY, bb), BooleanEntry(aZ, false)]
385386 }
386387 else throw("Strict value is not equal to itself.")
387388 }
398399 func Claim (ab) = {
399400 let aJ = toString(R.caller)
400401 let aB = ((("_" + ab) + "_") + toString(B(t(((aJ + ab) + m)), "no entry found for user")))
401- let bc = ((aJ + aB) + n)
402- let az = y((valueOrErrorMessage(getBoolean(bc), "cannot ascertain claimability") == true), (("user + " + aJ) + " already claimed"))
402+ let bd = ((aJ + aB) + n)
403+ let az = y((valueOrErrorMessage(getBoolean(bd), "cannot ascertain claimability") == true), (("user + " + aJ) + " already claimed"))
403404 if ((az == az))
404405 then {
405- let aX = x(((aJ + aB) + h))
406- let aZ = w(((aJ + aB) + g))
407- let bd = addressFromStringValue(E(v((ab + b)), "internal error: no reserve found"))
408- let be = w(((aJ + aB) + j))
409- let bf = w(((aJ + aB) + f))
410- let L = if ((0 >= (bf - height)))
406+ let aV = x(((aJ + aB) + h))
407+ let aX = w(((aJ + aB) + g))
408+ let be = addressFromStringValue(E(v((ab + b)), "internal error: no reserve found"))
409+ let bf = w(((aJ + aB) + j))
410+ let bg = w(((aJ + aB) + f))
411+ let L = if ((0 >= (bg - height)))
411412 then 0
412- else (bf - height)
413- let bg = K(L)
414- let aA = y((bf > height), (toString(bg) + "/1000 days left to claim"))
413+ else (bg - height)
414+ let bh = K(L)
415+ let aA = y((bg > height), (toString(bh) + "/1000 days left to claim"))
415416 if ((aA == aA))
416417 then {
417- let bh = invoke(bd, "transferInterest", [aJ, be, toBytes(aX)], nil)
418- if ((bh == bh))
419- then [ScriptTransfer(addressFromStringValue(aJ), aZ, toBytes(aX)), BooleanEntry(bc, true)]
418+ let bi = invoke(be, "transferInterest", [aJ, bf, toBytes(aV)], nil)
419+ if ((bi == bi))
420+ then [ScriptTransfer(addressFromStringValue(aJ), aX, toBytes(aV)), BooleanEntry(bd, true)]
420421 else throw("Strict value is not equal to itself.")
421422 }
422423 else throw("Strict value is not equal to itself.")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = this
55
66 let b = "_Reserve"
77
88 let c = "_MinLockAmount"
99
1010 let d = "_MaxLockAmount"
1111
1212 let e = nil
1313
1414 let f = "_Eligible_to_unlock_at_block"
1515
1616 let g = "_Amount_locked"
1717
1818 let h = "_Asset_locked"
1919
2020 let i = "_User"
2121
2222 let j = "_APY_amount"
2323
2424 let k = "_Total_Locked_Amount"
2525
2626 let l = "_Days_locked"
2727
2828 let m = "_Entry_Index"
2929
3030 let n = "_Already_Claimed"
3131
3232 let o = "admin_"
3333
3434 let p = 1440
3535
3636 let q = 30
3737
3838 let r = 60
3939
4040 let s = 90
4141
4242 func t (u) = getInteger(this, u)
4343
4444
4545 func v (u) = getString(this, u)
4646
4747
4848 func w (u) = value(getInteger(this, u))
4949
5050
5151 func x (u) = value(getString(this, u))
5252
5353
5454 func y (z,A) = if (z)
5555 then throw(A)
5656 else true
5757
5858
5959 func B (C,A) = {
6060 let D = C
6161 if ($isInstanceOf(D, "Int"))
6262 then {
6363 let C = D
6464 C
6565 }
6666 else throw(A)
6767 }
6868
6969
7070 func E (C,A) = {
7171 let D = C
7272 if ($isInstanceOf(D, "String"))
7373 then {
7474 let C = D
7575 C
7676 }
7777 else throw(A)
7878 }
7979
8080
8181 func F (u,G) = if ((0 > G))
8282 then throw(((("writing negative value " + toString(G)) + " for key ") + u))
8383 else IntegerEntry(u, G)
8484
8585
8686 func H (u,G) = if ((" " == G))
8787 then throw(("writing an empty string " + G))
8888 else StringEntry(u, G)
8989
9090
9191 func I (J) = if (if (if ((J != q))
9292 then true
9393 else (J != r))
9494 then true
9595 else (J != s))
9696 then throw("invalid locking period")
9797 else (((J + 1) * p) + height)
9898
9999
100100 func K (L) = if ((0 >= L))
101101 then 0
102102 else {
103103 let M = pow(10, 0, 3, 0, 0, CEILING)
104104 let N = fraction(L, M, p)
105105 N
106106 }
107107
108108
109109 func O (u,G) = if (!(isDefined(v(u))))
110110 then H(u, G)
111111 else throw(("already initialized: " + u))
112112
113113
114114 func P (u,G) = if (!(isDefined(v(u))))
115115 then F(u, G)
116116 else throw(("already initialized: " + u))
117117
118118
119119 func Q (R) = {
120120 let S = toBase58String(R.caller.bytes)
121121 let T = (o + S)
122122 let D = v(o)
123123 if ($isInstanceOf(D, "String"))
124124 then {
125125 let U = D
126126 if ((S != v(o)))
127127 then throw("unauthorized")
128128 else true
129129 }
130130 else {
131131 let V = v(T)
132132 if ($isInstanceOf(V, "String"))
133133 then {
134134 let W = V
135135 if ((S != v(T)))
136136 then throw("unauthorized")
137137 else true
138138 }
139139 else throw("unauthorizd")
140140 }
141141 }
142142
143143
144144 func X (u,Y) = {
145145 let D = Y
146146 if ($isInstanceOf(D, "String"))
147147 then {
148148 let Y = D
149149 O(u, Y)
150150 }
151151 else if ($isInstanceOf(D, "Int"))
152152 then {
153153 let Y = D
154154 P(u, Y)
155155 }
156156 else throw("unsupported config type")
157157 }
158158
159159
160160 func Z (u) = {
161161 let aa = t(u)
162162 if (isDefined(aa))
163163 then (value(aa) + 1)
164164 else 0
165165 }
166166
167167
168168 @Callable(R)
169169 func addAsset (ab,ac,ad,ae,af) = {
170170 let ag = Q(R)
171171 if ((ag == ag))
172172 then {
173173 let ah = (ab + b)
174174 let ai = (ab + c)
175175 let aj = (ab + d)
176176 let ak = if ((af > ae))
177177 then [P(ai, ae), P(aj, af)]
178178 else [P(ai, af), P(aj, ae)]
179179 ([O(ab, ac), O(ah, ad)] ++ ak)
180180 }
181181 else throw("Strict value is not equal to itself.")
182182 }
183183
184184
185185
186186 @Callable(R)
187187 func deleteAsset (ab) = {
188188 let ag = Q(R)
189189 if ((ag == ag))
190190 then {
191191 let al = E(v(ab), (("asset with ticker " + ab) + " not found"))
192192 if ((al == al))
193193 then [DeleteEntry(ab), DeleteEntry((ab + c)), DeleteEntry((ab + d)), DeleteEntry((ab + b))]
194194 else throw("Strict value is not equal to itself.")
195195 }
196196 else throw("Strict value is not equal to itself.")
197197 }
198198
199199
200200
201201 @Callable(R)
202202 func _getAssetIdByTicker (ab) = {
203203 let ag = Q(R)
204204 if ((ag == ag))
205205 then {
206206 let U = E(v(ab), "asset not found")
207207 $Tuple2(nil, U)
208208 }
209209 else throw("Strict value is not equal to itself.")
210210 }
211211
212212
213213
214214 @Callable(R)
215215 func init (am) = {
216216 let an = valueOrErrorMessage(addressFromString(am), "invalid address")
217217 [O(o, toString(an))]
218218 }
219219
220220
221221
222222 @Callable(R)
223223 func _deleteEntry (u) = {
224224 let ag = Q(R)
225225 if ((ag == ag))
226226 then [DeleteEntry(u)]
227227 else throw("Strict value is not equal to itself.")
228228 }
229229
230230
231231
232232 @Callable(R)
233233 func addAdmin (am) = {
234234 let ag = Q(R)
235235 if ((ag == ag))
236236 then {
237237 let an = valueOrErrorMessage(addressFromString(am), "invalid address")
238238 let ao = (o + toString(an))
239239 [O(ao, am)]
240240 }
241241 else throw("Strict value is not equal to itself.")
242242 }
243243
244244
245245
246246 @Callable(R)
247247 func changeMainAdmin (ap) = {
248248 let aq = Q(R)
249249 if ((aq == aq))
250250 then {
251251 let an = valueOrErrorMessage(addressFromString(ap), "invalid address")
252252 let ar = DeleteEntry(o)
253253 if ((ar == ar))
254254 then [O(o, toString(an))]
255255 else throw("Strict value is not equal to itself.")
256256 }
257257 else throw("Strict value is not equal to itself.")
258258 }
259259
260260
261261
262262 @Callable(R)
263263 func updateOtherAdminAddress (ap) = {
264264 let aq = Q(R)
265265 if ((aq == aq))
266266 then {
267267 let an = valueOrErrorMessage(addressFromString(ap), "invalid address")
268268 let as = toString(R.caller)
269269 let T = (o + as)
270270 let at = E(v(T), "no previous address found")
271271 if ((at == at))
272272 then {
273273 let au = DeleteEntry(T)
274274 if ((au == au))
275275 then [O(T, toString(an))]
276276 else throw("Strict value is not equal to itself.")
277277 }
278278 else throw("Strict value is not equal to itself.")
279279 }
280280 else throw("Strict value is not equal to itself.")
281281 }
282282
283283
284284
285285 @Callable(R)
286286 func removeOtherAdmin (av) = {
287287 let aq = Q(R)
288288 if ((aq == aq))
289289 then {
290290 let an = valueOrErrorMessage(addressFromString(av), "invalid address")
291291 let aw = (o + toString(an))
292292 let ax = DeleteEntry(aw)
293293 if ((ax == ax))
294294 then nil
295295 else throw("Strict value is not equal to itself.")
296296 }
297297 else throw("Strict value is not equal to itself.")
298298 }
299299
300300
301301
302302 @Callable(R)
303303 func updateConfigValue (u,Y) = {
304304 let aq = Q(R)
305305 if ((aq == aq))
306306 then {
307307 let ar = DeleteEntry(u)
308308 if ((ar == ar))
309309 then [X(u, Y)]
310310 else throw("Strict value is not equal to itself.")
311311 }
312312 else throw("Strict value is not equal to itself.")
313313 }
314314
315315
316316
317317 @Callable(R)
318318 func _getDaysLeftToClaim (ay) = {
319319 let az = Q(R)
320320 if ((az == az))
321321 then {
322322 let aA = valueOrErrorMessage(addressFromString(ay), "invalid address")
323323 if ((aA == aA))
324324 then {
325325 let aB = ("_" + toString(B(t((ay + m)), ("no entry found for " + ay))))
326326 let aC = ((ay + aB) + f)
327327 let aD = B(t(aC), "internal error")
328328 let aE = I((height - aD))
329329 $Tuple2(nil, aE)
330330 }
331331 else throw("Strict value is not equal to itself.")
332332 }
333333 else throw("Strict value is not equal to itself.")
334334 }
335335
336336
337337
338338 @Callable(R)
339339 func Lock (aF,ab) = {
340340 let aA = y((1 != size(R.payments)), "attach amount you want to lock")
341341 if ((aA == aA))
342342 then {
343343 let aG = toBase58String(value(R.payments[0].assetId))
344344 let aH = y((v(ab) != aG), "asset not supported")
345345 if ((aH == aH))
346346 then {
347347 let aI = aF
348348 let aJ = toBase58String(R.caller.bytes)
349349 let aK = R.payments[0].amount
350350 let aL = B(t((ab + c)), "internal error: minimum stacking amount not specified")
351351 let aM = B(t((ab + d)), "internal error: maximum staking amount not specified")
352352 let aN = y(if ((aL > aK))
353353 then true
354354 else (aK > aM), "staking amount is out of range")
355355 if ((aN == aN))
356356 then {
357357 let aO = (aJ + k)
358358 let aP = if (!(isDefined(t(aO))))
359359 then 0
360360 else (aK + value(t(aO)))
361361 let aQ = y((aP > aM), "you have maxed out your quota")
362362 if ((aQ == aQ))
363363 then {
364- let aR = invoke(Address(fromBase58String(x(o))), "getAPYAmount", [aJ, ab, aK], nil)
365- let aS = {
366- let D = aR
364+ let aB = (((aJ + "_") + ab) + m)
365+ let aR = Z(aB)
366+ let aS = ((("_" + ab) + "_") + toString(aR))
367+ let aT = (i + aS)
368+ let aU = ((aJ + aS) + i)
369+ let aV = ((aJ + aS) + h)
370+ let aW = ((aJ + aS) + l)
371+ let aX = ((aJ + aS) + g)
372+ let aY = ((aJ + aS) + j)
373+ let aC = ((aJ + aS) + f)
374+ let aZ = ((aJ + aS) + n)
375+ let ba = invoke(Address(fromBase58String(x(o))), "getAPYAmount", [aJ, ab, aK], nil)
376+ let bb = {
377+ let D = ba
367378 if ($isInstanceOf(D, "Int"))
368379 then {
369- let aT = D
370- aT
380+ let bc = D
381+ bc
371382 }
372383 else throw(("could not get the APY amount for " + aJ))
373384 }
374- let aB = ((aJ + ab) + m)
375- let aU = Z(aB)
376- let aV = ((("_" + ab) + "_") + toString(aU))
377- let aW = ((aJ + aV) + i)
378- let aX = ((aJ + aV) + h)
379- let aY = ((aJ + aV) + l)
380- let aZ = ((aJ + aV) + g)
381- let ba = ((aJ + aV) + j)
382- let aC = ((aJ + aV) + f)
383- let bb = ((aJ + aV) + n)
384-[P(aB, aU), O(aW, aJ), O(aX, aG), P(aY, aI), P(aZ, R.payments[0].amount), P(aO, aP), P(aC, I(aF)), P(ba, aS), BooleanEntry(bb, false)]
385+[P(aT, aR), O(aU, aJ), O(aV, aG), P(aW, aI), P(aX, R.payments[0].amount), P(aO, aP), P(aC, I(aF)), P(aY, bb), BooleanEntry(aZ, false)]
385386 }
386387 else throw("Strict value is not equal to itself.")
387388 }
388389 else throw("Strict value is not equal to itself.")
389390 }
390391 else throw("Strict value is not equal to itself.")
391392 }
392393 else throw("Strict value is not equal to itself.")
393394 }
394395
395396
396397
397398 @Callable(R)
398399 func Claim (ab) = {
399400 let aJ = toString(R.caller)
400401 let aB = ((("_" + ab) + "_") + toString(B(t(((aJ + ab) + m)), "no entry found for user")))
401- let bc = ((aJ + aB) + n)
402- let az = y((valueOrErrorMessage(getBoolean(bc), "cannot ascertain claimability") == true), (("user + " + aJ) + " already claimed"))
402+ let bd = ((aJ + aB) + n)
403+ let az = y((valueOrErrorMessage(getBoolean(bd), "cannot ascertain claimability") == true), (("user + " + aJ) + " already claimed"))
403404 if ((az == az))
404405 then {
405- let aX = x(((aJ + aB) + h))
406- let aZ = w(((aJ + aB) + g))
407- let bd = addressFromStringValue(E(v((ab + b)), "internal error: no reserve found"))
408- let be = w(((aJ + aB) + j))
409- let bf = w(((aJ + aB) + f))
410- let L = if ((0 >= (bf - height)))
406+ let aV = x(((aJ + aB) + h))
407+ let aX = w(((aJ + aB) + g))
408+ let be = addressFromStringValue(E(v((ab + b)), "internal error: no reserve found"))
409+ let bf = w(((aJ + aB) + j))
410+ let bg = w(((aJ + aB) + f))
411+ let L = if ((0 >= (bg - height)))
411412 then 0
412- else (bf - height)
413- let bg = K(L)
414- let aA = y((bf > height), (toString(bg) + "/1000 days left to claim"))
413+ else (bg - height)
414+ let bh = K(L)
415+ let aA = y((bg > height), (toString(bh) + "/1000 days left to claim"))
415416 if ((aA == aA))
416417 then {
417- let bh = invoke(bd, "transferInterest", [aJ, be, toBytes(aX)], nil)
418- if ((bh == bh))
419- then [ScriptTransfer(addressFromStringValue(aJ), aZ, toBytes(aX)), BooleanEntry(bc, true)]
418+ let bi = invoke(be, "transferInterest", [aJ, bf, toBytes(aV)], nil)
419+ if ((bi == bi))
420+ then [ScriptTransfer(addressFromStringValue(aJ), aX, toBytes(aV)), BooleanEntry(bd, true)]
420421 else throw("Strict value is not equal to itself.")
421422 }
422423 else throw("Strict value is not equal to itself.")
423424 }
424425 else throw("Strict value is not equal to itself.")
425426 }
426427
427428

github/deemru/w8io/169f3d6 
73.67 ms