tx · 2gfrmtCHstvBSQ7MAUg3aTDWKh1Doq9pKQBu67KhQny9

3MwK6nw9HMwuKbXxu6J1rfecvePPd3JyAje:  -0.02700000 Waves

2022.11.30 18:31 [2340018] smart account 3MwK6nw9HMwuKbXxu6J1rfecvePPd3JyAje > SELF 0.00000000 Waves

{ "type": 13, "id": "2gfrmtCHstvBSQ7MAUg3aTDWKh1Doq9pKQBu67KhQny9", "fee": 2700000, "feeAssetId": null, "timestamp": 1669822320246, "version": 1, "sender": "3MwK6nw9HMwuKbXxu6J1rfecvePPd3JyAje", "senderPublicKey": "8JB75GXEKqxmpXc6KVtT9UNqJ3BBSUZDodYD4DU7CUUB", "proofs": [ "4P62nR3QrWJGdVybDKRDedi93bmYmXUX1om26JJGSFM9e4UiSfopPRpLCa2v97b2t8Sh8E6rDoi7LsqEYccszGHb" ], "script": "base64:AAIFAAAAAAAAD2cIAhIJCgcBAQEBAQgBEgASBAoCCAgSBAoCCAgSBAoCCAgSAwoBCBIAIg9nZXRTdHJpbmdPckZhaWwiA2tleSIDU0VQIghCVUZTQ0FMRSIGc2NhbGU4Igh0aHJvd0VyciIDbXNnIh1jb252ZXJ0UHJpY2VBc3NldEludG9JZG9Bc3NldCIQcHJpY2VBc3NldEFtb3VudCIOcHJpY2VBc3NldE1VTFQiBXByaWNlIglwcmljZU1VTFQiDGlkb0Fzc2V0TVVMVCIPYlByaWNlQXNzZXRNVUxUIg1iSWRvQXNzZXRNVUxUIg5iUHJpY2VBc3NldEJVRiIPYkFtb3VudEFzc2V0QlVGIg5JZHhDZmdJZG9TdGFydCIRSWR4Q2ZnSWRvRHVyYXRpb24iEElkeENmZ0NsYWltU3RhcnQiE0lkeENmZ0NsYWltRHVyYXRpb24iC0lkeENmZ1ByaWNlIg9JZHhDZmdQcmljZU11bHQiEElkeENmZ0lkb0Fzc2V0SWQiEklkeENmZ0lkb0Fzc2V0TXVsdCISSWR4Q2ZnUHJpY2VBc3NldElkIhRJZHhDZmdQcmljZUFzc2V0TXVsdCIVSWR4Q2ZnTWluSW52ZXN0QW1vdW50Ig1mcm9tYXRDb25maWdTIghpZG9TdGFydCILaWRvRHVyYXRpb24iCmNsYWltU3RhcnQiDWNsYWltRHVyYXRpb24iCXByaWNlTXVsdCIMaWRvQXNzZXRJZDU4IgxpZG9Bc3NldE11bHQiDnByaWNlQXNzZXRJZDU4Ig5wcmljZUFzc2V0TXVsdCIPbWluSW52ZXN0QW1vdW50IhN0b3RhbElkb0Fzc2V0VG9TZWxsIgxmcm9tYXRDb25maWciEUlkeEludlRvdGFsQW1vdW50IhVJZHhJbnZSZW1haW5pbmdBbW91bnQiHUlkeEludkNsYWltZWRQcmljZUFzc2V0QW1vdW50IhtJZHhJbnZDbGFpbWVkSWRvQXNzZXRBbW91bnQiF0lkeEludkxhc3RDbGFpbWVkSGVpZ2h0Ig9mb3JtYXRJbnZlc3RvclMiC3RvdGFsQW1vdW50Ig9yZW1haW5pbmdBbW91bnQiF2NsYWltZWRQcmljZUFzc2V0QW1vdW50IhVjbGFpbWVkSWRvQXNzZXRBbW91bnQiEWxhc3RDbGFpbWVkSGVpZ2h0Ig5mb3JtYXRJbnZlc3RvciITZm9ybWF0SGlzdG9yeVJlY29yZCIOaWRvQXNzZXRBbW91bnQiCWtleUNvbmZpZyILa2V5SW52ZXN0b3IiC3VzZXJBZGRyZXNzIglrZXlUb3RhbHMiGWtleU9wZXJhdGlvbkhpc3RvcnlSZWNvcmQiBHR5cGUiBnR4SWQ1OCIUa2V5VVNETkNsYWltRGlzYWJsZWQiFWtleVVTRE5DbGFpbUVuZEhlaWdodCIPa2V5UGVyaW9kTGVuZ3RoIhBrZXlDdXJyZW50UGVyaW9kIhRrZXlQZXJpb2RTdGFydEhlaWdodCIJcGVyaW9kTnVtIhJrZXlQZXJpb2RFbmRIZWlnaHQiH2tleVVzZHRQcmljZUFzc2V0QWxsb3dhYmxlUmF0aW8iF2tleVRvdGFsUGVyaW9kQWxsb3dhbmNlIgdhc3NldElkIhZrZXlVc2VyUGVyaW9kQWxsb3dhbmNlIh5rZXlQZXJpb2RUb3RhbEF2YWlsYWJsZVRvQ2xhaW0iHWtleVBlcmlvZFVzZXJBdmFpbGFibGVUb0NsYWltIhtrZXlVc2R0UHJpY2VBc3NldFN0YWJsZVBvb2wiDmtleVVzZHRBc3NldElkIhRrZXlQcmljZUFzc2V0QmFsYW5jZSIHYWRkcmVzcyITa2V5TWFuYWdlclB1YmxpY0tleSIaa2V5UGVuZGluZ01hbmFnZXJQdWJsaWNLZXkiD3JlYWRDb25maWdBcnJheSIjcmVhZFRvdGFsc0FycmF5T3JEZWZhdWx0QnlDdXN0b21LZXkiCWN1c3RvbUtleSIYcmVhZFRvdGFsc0FycmF5T3JEZWZhdWx0IhpyZWFkSW52ZXN0b3JBcnJheU9yRGVmYXVsdCIXcmVhZEludmVzdG9yQXJyYXlPckZhaWwiFUlkeERpZmZUb3RhbEluY3JlbWVudCIkSWR4RGlmZlJlbWFpbmluZ1ByaWNlQW1vdW50SW5jcmVtZW50IiJJZHhEaWZmQ2xhaW1lZFByaWNlQW1vdW50SW5jcmVtZW50IiVJZHhEaWZmQ2xhaW1lZElkb0Fzc2V0QW1vdW50SW5jcmVtZW50IgtUb3RhbHNFbnRyeSIJb3JpZ0FycmF5Ig1pbmNyZW1lbnREaWZmIhRuZXdMYXN0Q2xhaW1lZEhlaWdodCIRcHJpY2VBc3NldEJhbGFuY2UiDm5ld1RvdGFsQW1vdW50IhJuZXdSZW1haW5pbmdBbW91bnQiCGNmZ0FycmF5IhJwcmljZUFzc2V0RGVjaW1hbHMiI3ByaWNlQXNzZXRCYWxhbmNlUHJpY2VBc3NldERlY2ltYWxzIhpuZXdDbGFpbWVkUHJpY2VBc3NldEFtb3VudCIYbmV3Q2xhaW1lZElkb0Fzc2V0QW1vdW50IgdlbnRyaWVzIhduZXdMb2dpY1JlbWFpbmluZ0Ftb3VudCIbSW52ZXN0T3BlcmF0aW9uSGlzdG9yeUVudHJ5IgR0eElkIhpDbGFpbU9wZXJhdGlvbkhpc3RvcnlFbnRyeSINaW50ZXJuYWxDbGFpbSIQY2xhaW1lZEFzc2V0SWQ1OCIIY2xhaW1FbmQiCmlkb0Fzc2V0SWQiDHByaWNlQXNzZXRJZCINdXNlckFkZHJlc3M1OCIPb3JpZ0ludmVzdEFycmF5IhFpbnZlc3RUb3RhbEFtb3VudCIaaW52ZXN0TGFzdENsYWltZWRIZWlnaHRUTVAiF2ludmVzdExhc3RDbGFpbWVkSGVpZ2h0IhRuZXdDbGFpbVBlcmlvZEhlaWdodCIOY2xhaW1pbmdCbG9ja3MiCGludmVzdG9yIhhjbGFpbWluZ1ByaWNlQXNzZXRBbW91bnQiFmNsYWltaW5nSWRvQXNzZXRBbW91bnQiBmlzVVNETiITaXNVU0ROQ2xhaW1EaXNhYmxlZCIGY2hlY2tzIg9pbnRlcm5hbENsYWltVjIiCW91dEFtb3VudCIZdG90YWxVc2VyQXZhaWxhYmxlVG9DbGFpbSIedG90YWxQZXJpb2RQcmljZUFzc2V0QWxsb3dhbmNlIh11c2VyUGVyaW9kUHJpY2VBc3NldEFsbG93YW5jZSIMcGVyaW9kTGVuZ3RoIg1jdXJyZW50UGVyaW9kIht6ZXJvUGVyaW9kRW5kSGVpZ2hJc0RlZmluZWQiDSR0MDEyOTM3MTQ4MDciFWxhc3RQZXJpb2RTdGFydEhlaWdodCITbGFzdFBlcmlvZEVuZEhlaWdodCINJHQwMTMxOTcxMzkwMiIUdXBkYXRlZEN1cnJlbnRQZXJpb2QiC3BlcmlvZFN0YXJ0IhdibG9ja3NUb0xhc3RQZXJpb2RTdGFydCIJcGVyaW9kRW5kIhV6ZXJvUGVyaW9kU3RhcnRIZWlnaHQiE3plcm9QZXJpb2RFbmRIZWlnaHQiDSR0MDE0MTU3MTQ1MzkiG3BlcmlvZFRvdGFsQXZhaWxhYmxlVG9DbGFpbSIacGVyaW9kVXNlckF2YWlsYWJsZVRvQ2xhaW0iGXBlcmlvZE1pbkF2YWlsYWJsZVRvQ2xhaW0iHHVzZHRQcmljZUFzc2V0QWxsb3dhYmxlUmF0aW8iG3B1dE9uZVRrblYyUHJpY2VBc3NldEFtb3VudCINJHQwMTU1NjIxNTgxNSIBQCIFYm9udXMiCWZlZUFtb3VudCIIbHBBbW91bnQiC3VzZHRBc3NldElkIg0kdDAxNTg3NzE2MDk1IhRnZXRPbmVUa25WMkZlZUFtb3VudCIKdXNkdEFtb3VudCIaY3VycmVudFVzZHRQcmljZUFzc2V0UmF0aW8iE2VuZFBlcmlvZEJsb2Nrc0xlZnQiFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQiByRtYXRjaDAiAXMiHXBlbmRpbmdNYW5hZ2VyUHVibGljS2V5T3JVbml0IgttdXN0TWFuYWdlciIBaSICcGQiAnBrIgZpZG9FbmQiA3BtdCIMaWRvQXNzZXRJbmZvIg5wcmljZUFzc2V0SW5mbyIPb3JpZ1RvdGFsc0FycmF5Igp0b3RhbHNEaWZmIg5taW5JdmVzdEFtb3VudCIKcG10QXNzZXRJZCIJcG10QW1vdW50IhFvcmlnSW52ZXN0b3JBcnJheSITbmV3UHJpY2VUb3RhbEFtb3VudCIWcmVxdWlyZWRJZG9Bc3NldEFtb3VudCIPY2FsbGVyQWRkcmVzczU4IhBjbGFpbVJlc3VsdFR1cGxlIgpvdXRBc3NldElkIhpjbGFpbWVkUHJpY2VBbW91bnRGcm9tRGlmZiIdY2xhaW1lZElkb0Fzc2V0QW1vdW50RnJvbURpZmYiDSR0MDIyMDA0MjI0NDgiInVwZGF0ZWRQZXJpb2RUb3RhbEF2YWlsYWJsZVRvQ2xhaW0iIXVwZGF0ZWRQZXJpb2RVc2VyQXZhaWxhYmxlVG9DbGFpbSIYdXBkYXRlZFByaWNlQXNzZXRCYWxhbmNlIhxwcmljZUFzc2V0QmFsYW5jZUlkb0RlY2ltYWxzIhVhdmFpbGFibGVUb0NsYWltQXJy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", "chainId": 84, "height": 2340018, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6SWYDCccc9xoSNsEnhk9VzCL77LcF3M4mxoxRMFrmyxw Next: HqAkgmHebwhvTA8oYAmQHfAiRE5oiEbgDd6AkCa4ZACj Diff:
OldNewDifferences
208208 then F
209209 else height
210210 let bp = (bo - bn)
211- let bq = fraction(bl, bp, G)
212- let br = h(bq, L, k, H, J)
213- let bs = (bf == K)
214- let bt = valueOrElse(getBoolean(ak()), false)
215- let bu = [if (!(if (bs)
216- then bt
211+ let bq = split(value(getString(ae(bj))), c)
212+ let V = parseIntValue(bq[P])
213+ let X = parseIntValue(bq[R])
214+ let Y = parseIntValue(bq[S])
215+ let br = ((V - X) - Y)
216+ let bs = h(br, L, k, H, J)
217+ let bt = (bf == K)
218+ let bu = valueOrElse(getBoolean(ak()), false)
219+ let bv = [if (!(if (bt)
220+ then bu
217221 else false))
218222 then true
219223 else throw("USDN claim is disabled")]
220- if ((bu == bu))
224+ if ((bv == bv))
221225 then if ((bf == K))
222- then $Tuple6([0, -(bq), bq, 0], bq, bi, bk, bo, [bq, br])
226+ then $Tuple6([0, -(br), br, 0], br, bi, bk, bo, [br, bs])
223227 else if ((bf == I))
224- then $Tuple6([0, -(bq), 0, br], br, bh, bk, bo, [bq, br])
228+ then $Tuple6([0, -(br), 0, bs], bs, bh, bk, bo, [br, bs])
225229 else throw(("unsupported assetId: " + bf))
226230 else throw("Strict value is not equal to itself.")
227231 }
228232
229233
230-func bv (K,bj,bw,bx) = {
231- let by = value(getInteger(as(K)))
232- let bz = value(getInteger(au(K)))
233- let bA = value(getInteger(am()))
234- let bB = valueOrElse(getInteger(an()), 0)
235- let bC = isDefined(getInteger(aq(0)))
236- let bD = if ((bB > 0))
234+func bw (K,bj,bx,by) = {
235+ let bz = value(getInteger(as(K)))
236+ let bA = value(getInteger(au(K)))
237+ let bB = value(getInteger(am()))
238+ let bC = valueOrElse(getInteger(an()), 0)
239+ let bD = isDefined(getInteger(aq(0)))
240+ let bE = if ((bC > 0))
237241 then {
238- let bE = value(getInteger(ao(bB)))
239- let bF = value(getInteger(aq(bB)))
240- let bG = if ((height > bF))
242+ let bF = value(getInteger(ao(bC)))
243+ let bG = value(getInteger(aq(bC)))
244+ let bH = if ((height > bG))
241245 then {
242- let bH = (bB + 1)
243- let bI = if ((height > (bF + bA)))
246+ let bI = (bC + 1)
247+ let bJ = if ((height > (bG + bB)))
244248 then {
245- let bJ = ((height - bF) % bA)
246- if ((bJ == 0))
247- then ((height - bA) + 1)
248- else (height - bJ)
249+ let bK = ((height - bG) % bB)
250+ if ((bK == 0))
251+ then ((height - bB) + 1)
252+ else (height - bK)
249253 }
250- else (bF + 1)
251- let bK = ((bI + bA) - 1)
252- $Tuple3(bH, bI, bK)
254+ else (bG + 1)
255+ let bL = ((bJ + bB) - 1)
256+ $Tuple3(bI, bJ, bL)
253257 }
254- else $Tuple3(bB, bE, bF)
255- let bH = bG._1
256- let bI = bG._2
257- let bK = bG._3
258- $Tuple3(bH, bI, bK)
258+ else $Tuple3(bC, bF, bG)
259+ let bI = bH._1
260+ let bJ = bH._2
261+ let bL = bH._3
262+ $Tuple3(bI, bJ, bL)
259263 }
260- else if (bC)
264+ else if (bD)
261265 then {
262- let bL = value(getInteger(ao(0)))
263- let bM = value(getInteger(aq(0)))
264- let bN = if ((height > bM))
266+ let bM = value(getInteger(ao(0)))
267+ let bN = value(getInteger(aq(0)))
268+ let bO = if ((height > bN))
265269 then {
266- let bH = (bB + 1)
267- let bI = (bM + 1)
268- let bK = ((bI + bA) - 1)
269- $Tuple3(bH, bI, bK)
270+ let bI = (bC + 1)
271+ let bJ = (bN + 1)
272+ let bL = ((bJ + bB) - 1)
273+ $Tuple3(bI, bJ, bL)
270274 }
271- else $Tuple3(bB, bL, bM)
272- let bH = bN._1
273- let bI = bN._2
274- let bK = bN._3
275- $Tuple3(bH, bI, bK)
275+ else $Tuple3(bC, bM, bN)
276+ let bI = bO._1
277+ let bJ = bO._2
278+ let bL = bO._3
279+ $Tuple3(bI, bJ, bL)
276280 }
277- else $Tuple3(bB, valueOrElse(getInteger(ao(bB)), height), valueOrElse(getInteger(aq(bB)), ((height + bA) - 1)))
278- let bH = bD._1
279- let bI = bD._2
280- let bK = bD._3
281- let bO = valueOrElse(getInteger(av(K, bH)), by)
282- let bP = valueOrElse(getInteger(aw(K, bH, bj)), bz)
281+ else $Tuple3(bC, valueOrElse(getInteger(ao(bC)), height), valueOrElse(getInteger(aq(bC)), ((height + bB) - 1)))
282+ let bI = bE._1
283+ let bJ = bE._2
284+ let bL = bE._3
285+ let bP = valueOrElse(getInteger(av(K, bI)), bz)
286+ let bQ = valueOrElse(getInteger(aw(K, bI, bj)), bA)
283287 let aR = valueOrElse(getInteger(az(bj)), 0)
284- let bQ = min([(bw + aR), bO, bP])
285- let bR = value(getInteger(ar()))
286- let bS = e
287- let bT = {
288- let bU = invoke(addressFromStringValue(value(getString(ax()))), "putOneTknV2WithoutTakeFeeREADONLY", [bS, K], nil)
289- if ($isInstanceOf(bU, "(Int, Int, Int)"))
290- then bU
288+ let bR = min([(bx + aR), bP, bQ])
289+ let bS = value(getInteger(ar()))
290+ let bT = e
291+ let bU = {
292+ let bV = invoke(addressFromStringValue(value(getString(ax()))), "putOneTknV2WithoutTakeFeeREADONLY", [bT, K], nil)
293+ if ($isInstanceOf(bV, "(Int, Int, Int)"))
294+ then bV
291295 else throw("Couldn't cast Any to (Int, Int, Int)")
292296 }
293- if ((bT == bT))
297+ if ((bU == bU))
294298 then {
295- let bV = bT._3
296- let bW = bT._2
297- let bX = bT._1
298- let bY = value(getString(ay()))
299- let bZ = {
300- let bU = invoke(addressFromStringValue(value(getString(ax()))), "getOneTknV2READONLY", [bY, bX], nil)
301- if ($isInstanceOf(bU, "(Int, Int)"))
302- then bU
299+ let bW = bU._3
300+ let bX = bU._2
301+ let bY = bU._1
302+ let bZ = value(getString(ay()))
303+ let ca = {
304+ let bV = invoke(addressFromStringValue(value(getString(ax()))), "getOneTknV2READONLY", [bZ, bY], nil)
305+ if ($isInstanceOf(bV, "(Int, Int)"))
306+ then bV
303307 else throw("Couldn't cast Any to (Int, Int)")
304308 }
305- if ((bZ == bZ))
309+ if ((ca == ca))
306310 then {
307- let ca = bZ._2
308- let cb = bZ._1
309- let cc = fraction(bS, e, cb)
310- let cd = (bK - height)
311- $Tuple10(bQ, bO, bP, bx, bR, cc, cd, bH, bI, bK)
311+ let cb = ca._2
312+ let cc = ca._1
313+ let cd = fraction(bT, e, cc)
314+ let ce = (bL - height)
315+ $Tuple10(bR, bP, bQ, by, bS, cd, ce, bI, bJ, bL)
312316 }
313317 else throw("Strict value is not equal to itself.")
314318 }
316320 }
317321
318322
319-func ce () = {
320- let cf = getString(aB())
321- if ($isInstanceOf(cf, "String"))
323+func cf () = {
324+ let cg = getString(aB())
325+ if ($isInstanceOf(cg, "String"))
322326 then {
323- let cg = cf
324- fromBase58String(cg)
327+ let ch = cg
328+ fromBase58String(ch)
325329 }
326- else if ($isInstanceOf(cf, "Unit"))
330+ else if ($isInstanceOf(cg, "Unit"))
327331 then unit
328332 else throw("Match error")
329333 }
330334
331335
332-func ch () = {
333- let cf = getString(aC())
334- if ($isInstanceOf(cf, "String"))
336+func ci () = {
337+ let cg = getString(aC())
338+ if ($isInstanceOf(cg, "String"))
335339 then {
336- let cg = cf
337- fromBase58String(cg)
340+ let ch = cg
341+ fromBase58String(ch)
338342 }
339- else if ($isInstanceOf(cf, "Unit"))
343+ else if ($isInstanceOf(cg, "Unit"))
340344 then unit
341345 else throw("Match error")
342346 }
343347
344348
345-func ci (cj) = {
346- let ck = throw("Permission denied")
347- let cf = ce()
348- if ($isInstanceOf(cf, "ByteVector"))
349+func cj (ck) = {
350+ let cl = throw("Permission denied")
351+ let cg = cf()
352+ if ($isInstanceOf(cg, "ByteVector"))
349353 then {
350- let cl = cf
351- if ((cj.callerPublicKey == cl))
354+ let cm = cg
355+ if ((ck.callerPublicKey == cm))
352356 then true
353- else ck
357+ else cl
354358 }
355- else if ($isInstanceOf(cf, "Unit"))
356- then if ((cj.caller == this))
359+ else if ($isInstanceOf(cg, "Unit"))
360+ then if ((ck.caller == this))
357361 then true
358- else ck
362+ else cl
359363 else throw("Match error")
360364 }
361365
362366
363-@Callable(cj)
367+@Callable(ck)
364368 func constructor (D,E,F,G,k,K,M) = {
365369 let H = ((100 * 1000) * 1000)
366- let cm = (D + E)
370+ let cn = (D + E)
367371 if (isDefined(getString(ad())))
368372 then throw("already initialized")
369- else if (("3PMEHLx1j6zerarZTYfsGqDeeZqQoMpxq5S" != toString(cj.caller)))
373+ else if (("3PMEHLx1j6zerarZTYfsGqDeeZqQoMpxq5S" != toString(ck.caller)))
370374 then throw("not authorized")
371- else if ((size(cj.payments) != 1))
375+ else if ((size(ck.payments) != 1))
372376 then throw("exactly 1 payment must be attached")
373- else if ((cm >= F))
377+ else if ((cn >= F))
374378 then throw("claimStart must be greater than idoEnd")
375379 else {
376- let cn = value(cj.payments[0])
377- let bh = value(cn.assetId)
378- let co = valueOrErrorMessage(assetInfo(bh), "fail to load ido asset info")
380+ let co = value(ck.payments[0])
381+ let bh = value(co.assetId)
382+ let cp = valueOrErrorMessage(assetInfo(bh), "fail to load ido asset info")
379383 let I = toBase58String(bh)
380- let J = pow(10, 0, co.decimals, 0, 0, DOWN)
384+ let J = pow(10, 0, cp.decimals, 0, 0, DOWN)
381385 let bi = fromBase58String(K)
382- let cp = valueOrErrorMessage(assetInfo(bi), "fail to load price asset info")
383- let L = pow(10, 0, cp.decimals, 0, 0, DOWN)
384- let cq = aG()
385- let cr = [0, 0, 0, 0]
386-[StringEntry(ad(), O(D, E, F, G, k, H, I, J, K, L, M, cn.amount)), aN(ag(), cq, cr, F, 0)]
386+ let cq = valueOrErrorMessage(assetInfo(bi), "fail to load price asset info")
387+ let L = pow(10, 0, cq.decimals, 0, 0, DOWN)
388+ let cr = aG()
389+ let cs = [0, 0, 0, 0]
390+[StringEntry(ad(), O(D, E, F, G, k, H, I, J, K, L, M, co.amount)), aN(ag(), cr, cs, F, 0)]
387391 }
388392 }
389393
390394
391395
392-@Callable(cj)
396+@Callable(ck)
393397 func invest () = {
394398 let aU = aD()
395399 let D = parseIntValue(aU[r])
396400 let E = parseIntValue(aU[s])
397- let cm = (D + E)
401+ let cn = (D + E)
398402 let F = parseIntValue(aU[t])
399403 let G = parseIntValue(aU[u])
400404 let k = parseIntValue(aU[v])
405409 let K = aU[z]
406410 let bi = fromBase58String(K)
407411 let L = parseIntValue(aU[A])
408- let cs = parseIntValue(aU[B])
409- let af = toString(cj.caller)
412+ let ct = parseIntValue(aU[B])
413+ let af = toString(ck.caller)
410414 if ((D > height))
411415 then throw("ido has not been started yet")
412- else if ((height > cm))
416+ else if ((height > cn))
413417 then throw("ido has been already ended")
414- else if ((size(cj.payments) != 1))
418+ else if ((size(ck.payments) != 1))
415419 then throw("exactly 1 payment is expected")
416420 else {
417- let cn = value(cj.payments[0])
418- let ct = value(cn.assetId)
419- let cu = cn.amount
420- if ((ct != bi))
421- then throw((("invalid payment asset id: " + toBase58String(ct)) + " is expected"))
421+ let co = value(ck.payments[0])
422+ let cu = value(co.assetId)
423+ let cv = co.amount
424+ if ((cu != bi))
425+ then throw((("invalid payment asset id: " + toBase58String(cu)) + " is expected"))
422426 else {
423- let cv = aH(af)
424- let cq = aG()
425- let cw = (parseIntValue(cq[P]) + cu)
426- let cx = (cw * 100)
427- if ((cx > assetBalance(this, bh)))
427+ let cw = aH(af)
428+ let cr = aG()
429+ let cx = (parseIntValue(cr[P]) + cv)
430+ let cy = (cx * 100)
431+ if ((cy > assetBalance(this, bh)))
428432 then throw("IDO asset has been - sold consider to use smaller payment")
429433 else {
430- let cr = [cu, cu, 0, 0]
431-[aN(ae(af), cv, cr, F, 0), aN(ag(), cq, cr, F, 0), bb(af, cu, 0, cj.transactionId)]
434+ let cs = [cv, cv, 0, 0]
435+[aN(ae(af), cw, cs, F, 0), aN(ag(), cr, cs, F, 0), bb(af, cv, 0, ck.transactionId)]
432436 }
433437 }
434438 }
436440
437441
438442
439-@Callable(cj)
443+@Callable(ck)
440444 func claim (bf,bj) = {
441- let cy = toString(cj.caller)
442- if ((bj != cy))
445+ let cz = toString(ck.caller)
446+ if ((bj != cz))
443447 then throw("not authorized")
444448 else {
445449 let aU = aD()
446450 let K = aU[z]
447- let cz = be(bf, cj.caller, cj.transactionId)
448- let cr = cz._1
449- let bw = cz._2
450- let cA = cz._3
451- let bk = cz._4
452- let bo = cz._5
453- let cB = cr[aL]
454- let cC = cr[aM]
451+ let cA = be(bf, ck.caller, ck.transactionId)
452+ let cs = cA._1
453+ let bx = cA._2
454+ let cB = cA._3
455+ let bk = cA._4
456+ let bo = cA._5
457+ let cC = cs[aL]
458+ let cD = cs[aM]
455459 let aR = valueOrElse(getInteger(az(bj)), 0)
456460 let aV = value(assetInfo(fromBase58String(K))).decimals
457461 let aZ = if ((bf == K))
458462 then {
459- let cD = bv(K, bj, bw, cr[aL])
460- let bQ = cD._1
461- let bO = cD._2
462- let bP = cD._3
463- let bx = cD._4
464- let bR = cD._5
465- let cc = cD._6
466- let cd = cD._7
467- let bH = cD._8
468- let bI = cD._9
469- let bK = cD._10
470- let bu = [if ((bP > 0))
463+ let cE = bw(K, bj, bx, cs[aL])
464+ let bR = cE._1
465+ let bP = cE._2
466+ let bQ = cE._3
467+ let by = cE._4
468+ let bS = cE._5
469+ let cd = cE._6
470+ let ce = cE._7
471+ let bI = cE._8
472+ let bJ = cE._9
473+ let bL = cE._10
474+ let bv = [if ((bQ > 0))
471475 then true
472- else f("unavailable to claim because user period allowance reached"), if ((bO > 0))
476+ else f("unavailable to claim because user period allowance reached"), if ((bP > 0))
473477 then true
474- else f("unavailable to claim because total period allowance reached"), if ((bQ > 0))
478+ else f("unavailable to claim because total period allowance reached"), if ((bR > 0))
475479 then true
476- else f("nothing to claim"), if ((bR > cc))
480+ else f("nothing to claim"), if ((bS > cd))
477481 then true
478482 else f("unavailable to claim because usdn price lower than usdtPriceAssetAllowableRatio")]
479- if ((bu == bu))
483+ if ((bv == bv))
480484 then {
481- let cE = (bO - bQ)
482- let cF = (bP - bQ)
483- let aZ = if ((aR >= bQ))
484- then [ScriptTransfer(cj.caller, bQ, cA), IntegerEntry(az(bj), (aR - bQ))]
485+ let cF = (bP - bR)
486+ let cG = (bQ - bR)
487+ let aZ = if ((aR >= bR))
488+ then [ScriptTransfer(ck.caller, bR, cB), IntegerEntry(az(bj), (aR - bR))]
485489 else {
486- let cG = ((aR + bw) - bQ)
487-[ScriptTransfer(cj.caller, bQ, cA), aN(ae(bj), bk, cr, bo, 0), aN(ag(), aG(), cr, bo, 0), IntegerEntry(az(bj), cG)]
490+ let cH = ((aR + bx) - bR)
491+[ScriptTransfer(ck.caller, bR, cB), aN(ae(bj), bk, cs, bo, 0), aN(ag(), aG(), cs, bo, 0), IntegerEntry(az(bj), cH)]
488492 }
489- $Tuple2(([IntegerEntry(an(), bH), IntegerEntry(ao(bH), bI), IntegerEntry(aq(bH), bK), IntegerEntry(av(K, bH), cE), IntegerEntry(aw(K, bH, bj), cF), bd(bj, bQ, cC, cj.transactionId)] ++ aZ), unit)
493+ $Tuple2(([IntegerEntry(an(), bI), IntegerEntry(ao(bI), bJ), IntegerEntry(aq(bI), bL), IntegerEntry(av(K, bI), cF), IntegerEntry(aw(K, bI, bj), cG), bd(bj, bR, cD, ck.transactionId)] ++ aZ), unit)
490494 }
491495 else throw("Strict value is not equal to itself.")
492496 }
493497 else {
494- let cH = fraction(aR, e, pow(10, 0, aV, 0, 0, DOWN))
495- $Tuple2([ScriptTransfer(cj.caller, (bw + cH), cA), IntegerEntry(az(bj), 0), aN(ae(bj), bk, cr, bo, aR), aN(ag(), aG(), cr, bo, aR), bd(bj, cB, (cC + cH), cj.transactionId)], unit)
498+ let cI = fraction(aR, e, pow(10, 0, aV, 0, 0, DOWN))
499+ $Tuple2([ScriptTransfer(ck.caller, (bx + cI), cB), IntegerEntry(az(bj), 0), aN(ae(bj), bk, cs, bo, aR), aN(ag(), aG(), cs, bo, aR), bd(bj, cC, (cD + cI), ck.transactionId)], unit)
496500 }
497501 aZ
498502 }
500504
501505
502506
503-@Callable(cj)
507+@Callable(ck)
504508 func claimREADONLY (bf,bj) = {
505- let cz = be(bf, addressFromStringValue(bj), fromBase58String(""))
506- let cr = cz._1
507- let bw = cz._2
508- let cA = cz._3
509- let bk = cz._4
510- let bo = cz._5
511- let cI = cz._6
512- let cJ = cI[0]
513- let cK = cI[1]
514- $Tuple2(nil, makeString(["%s%d%d", bj, toString(cJ), toString(cK)], c))
509+ let cA = be(bf, addressFromStringValue(bj), fromBase58String(""))
510+ let cs = cA._1
511+ let bx = cA._2
512+ let cB = cA._3
513+ let bk = cA._4
514+ let bo = cA._5
515+ let cJ = cA._6
516+ let cK = cJ[0]
517+ let cL = cJ[1]
518+ $Tuple2(nil, makeString(["%s%d%d", bj, toString(cK), toString(cL)], c))
515519 }
516520
517521
518522
519-@Callable(cj)
523+@Callable(ck)
520524 func claimV2READONLY (bf,bj) = {
521- let cz = be(bf, addressFromStringValue(bj), fromBase58String(""))
522- let cr = cz._1
523- let bw = cz._2
524- let cA = cz._3
525- let bk = cz._4
526- let bo = cz._5
527- let cI = cz._6
528- let cJ = cI[0]
529- let cK = cI[1]
525+ let cA = be(bf, addressFromStringValue(bj), fromBase58String(""))
526+ let cs = cA._1
527+ let bx = cA._2
528+ let cB = cA._3
529+ let bk = cA._4
530+ let bo = cA._5
531+ let cJ = cA._6
532+ let cK = cJ[0]
533+ let cL = cJ[1]
530534 let aU = aD()
531535 let K = aU[z]
532536 let aR = valueOrElse(getInteger(az(bj)), 0)
533- let cH = (aR * 100)
534- let cL = (cK + cH)
535- let cM = bv(K, bj, bw, cr[aL])
536- let bQ = cM._1
537- let bO = cM._2
538- let bP = cM._3
539- let bx = cM._4
540- let bR = cM._5
541- let cc = cM._6
542- let cd = cM._7
543- let bH = cM._8
544- let bI = cM._9
545- let bK = cM._10
546- let cN = valueOrElse(getInteger(aq(bH)), 0)
547- let cO = (parseIntValue(aI(bj)[R]) - aR)
548- let cP = if ((height > cN))
537+ let cI = (aR * 100)
538+ let cM = (cL + cI)
539+ let cN = bw(K, bj, bx, cs[aL])
540+ let bR = cN._1
541+ let bP = cN._2
542+ let bQ = cN._3
543+ let by = cN._4
544+ let bS = cN._5
545+ let cd = cN._6
546+ let ce = cN._7
547+ let bI = cN._8
548+ let bJ = cN._9
549+ let bL = cN._10
550+ let cO = valueOrElse(getInteger(aq(bI)), 0)
551+ let cP = (parseIntValue(aI(bj)[R]) - aR)
552+ let cQ = if ((height > cO))
549553 then {
550- let cQ = value(getInteger(am()))
551- let cR = value(getInteger(au(K)))
552- let cS = value(getInteger(as(K)))
553- makeString(["%d%d%d%d%d%d", toString(cL), toString(cR), toString(cS), toString(bR), toString(cc), toString(cQ), toString(cO)], c)
554+ let cR = value(getInteger(am()))
555+ let cS = value(getInteger(au(K)))
556+ let cT = value(getInteger(as(K)))
557+ makeString(["%d%d%d%d%d%d", toString(cM), toString(cS), toString(cT), toString(bS), toString(cd), toString(cR), toString(cP)], c)
554558 }
555- else makeString(["%d%d%d%d%d%d", toString(cL), toString(bQ), toString(bO), toString(bR), toString(cc), toString(cd), toString(cO)], c)
556- $Tuple2(nil, cP)
559+ else makeString(["%d%d%d%d%d%d", toString(cM), toString(bR), toString(bP), toString(bS), toString(cd), toString(ce), toString(cP)], c)
560+ $Tuple2(nil, cQ)
557561 }
558562
559563
560564
561-@Callable(cj)
562-func setManager (cT) = {
563- let cU = ci(cj)
564- if ((cU == cU))
565+@Callable(ck)
566+func setManager (cU) = {
567+ let cV = cj(ck)
568+ if ((cV == cV))
565569 then {
566- let cV = fromBase58String(cT)
567- if ((cV == cV))
568- then [StringEntry(aC(), cT)]
570+ let cW = fromBase58String(cU)
571+ if ((cW == cW))
572+ then [StringEntry(aC(), cU)]
569573 else throw("Strict value is not equal to itself.")
570574 }
571575 else throw("Strict value is not equal to itself.")
573577
574578
575579
576-@Callable(cj)
580+@Callable(ck)
577581 func confirmManager () = {
578- let cW = ch()
579- let cX = if (isDefined(cW))
582+ let cX = ci()
583+ let cY = if (isDefined(cX))
580584 then true
581585 else throw("No pending manager")
582- if ((cX == cX))
586+ if ((cY == cY))
583587 then {
584- let cY = if ((cj.callerPublicKey == value(cW)))
588+ let cZ = if ((ck.callerPublicKey == value(cX)))
585589 then true
586590 else throw("You are not pending manager")
587- if ((cY == cY))
588- then [StringEntry(aB(), toBase58String(value(cW))), DeleteEntry(aC())]
591+ if ((cZ == cZ))
592+ then [StringEntry(aB(), toBase58String(value(cX))), DeleteEntry(aC())]
589593 else throw("Strict value is not equal to itself.")
590594 }
591595 else throw("Strict value is not equal to itself.")
592596 }
593597
594598
595-@Verifier(cZ)
596-func da () = {
597- let db = {
598- let cf = ce()
599- if ($isInstanceOf(cf, "ByteVector"))
599+@Verifier(da)
600+func db () = {
601+ let dc = {
602+ let cg = cf()
603+ if ($isInstanceOf(cg, "ByteVector"))
600604 then {
601- let cl = cf
602- cl
605+ let cm = cg
606+ cm
603607 }
604- else if ($isInstanceOf(cf, "Unit"))
605- then cZ.senderPublicKey
608+ else if ($isInstanceOf(cg, "Unit"))
609+ then da.senderPublicKey
606610 else throw("Match error")
607611 }
608- sigVerify(cZ.bodyBytes, cZ.proofs[0], db)
612+ sigVerify(da.bodyBytes, da.proofs[0], dc)
609613 }
610614
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func a (b) = valueOrErrorMessage(getString(b), (("mandatory this." + b) + " is not defined"))
55
66
77 let c = "__"
88
99 let d = toBigInt(1000000000000000000)
1010
1111 let e = 100000000
1212
1313 func f (g) = throw(makeString(["ido.ride:", g], " "))
1414
1515
1616 func h (i,j,k,l,m) = {
1717 let n = toBigInt(j)
1818 let o = toBigInt(m)
1919 let p = fraction(toBigInt(i), d, n)
2020 let q = fraction(p, toBigInt(l), toBigInt(k))
2121 toInt(fraction(q, toBigInt(m), d))
2222 }
2323
2424
2525 let r = 1
2626
2727 let s = 2
2828
2929 let t = 3
3030
3131 let u = 4
3232
3333 let v = 5
3434
3535 let w = 6
3636
3737 let x = 7
3838
3939 let y = 8
4040
4141 let z = 9
4242
4343 let A = 10
4444
4545 let B = 11
4646
4747 func C (D,E,F,G,k,H,I,J,K,L,M,N) = makeString(["%d%d%d%d%d%d%s%d%s%d%d%d", D, E, F, G, k, H, I, J, K, L, M, N], c)
4848
4949
5050 func O (D,E,F,G,k,H,I,J,K,L,M,N) = C(toString(D), toString(E), toString(F), toString(G), toString(k), toString(H), I, toString(J), K, toString(L), toString(M), toString(N))
5151
5252
5353 let P = 1
5454
5555 let Q = 2
5656
5757 let R = 3
5858
5959 let S = 4
6060
6161 let T = 5
6262
6363 func U (V,W,X,Y,Z) = makeString(["%d%d%d%d%d", V, W, X, Y, Z], c)
6464
6565
6666 func aa (V,W,X,Y,Z) = U(toString(V), toString(W), toString(X), toString(Y), toString(Z))
6767
6868
6969 func ab (i,ac) = makeString(["%d%d%d%d", toString(height), toString(lastBlock.timestamp), toString(i), toString(ac)], c)
7070
7171
7272 func ad () = "%s__config"
7373
7474
7575 func ae (af) = ("%s__" + af)
7676
7777
7878 func ag () = "%s__totals"
7979
8080
8181 func ah (ai,af,aj) = makeString(["%s%s%s%s__history", ai, af, aj], c)
8282
8383
8484 func ak () = "%s__usdnClaimDisabled"
8585
8686
8787 func al () = "%s__usdnClaimEndHeight"
8888
8989
9090 func am () = makeString(["%s", "periodLength"], c)
9191
9292
9393 func an () = makeString(["%s", "currentPeriod"], c)
9494
9595
9696 func ao (ap) = makeString(["%s%s", "periodStartHeight", toString(ap)], c)
9797
9898
9999 func aq (ap) = makeString(["%s%s", "periodEndHeight", toString(ap)], c)
100100
101101
102102 func ar () = makeString(["%s", "usdtPriceAssetAllowableRatio"], c)
103103
104104
105105 func as (at) = makeString(["%s%s", "totalPeriodAllowance", at], c)
106106
107107
108108 func au (at) = makeString(["%s%s", "userPeriodAllowance", at], c)
109109
110110
111111 func av (at,ap) = makeString(["%s%s%s", "periodTotalAvailableToClaim", at, toString(ap)], c)
112112
113113
114114 func aw (at,ap,af) = makeString(["%s%s%s%s", "periodUserAvailableToClaim", at, toString(ap), af], c)
115115
116116
117117 func ax () = makeString(["%s", "usdtPriceAssetStablePool"], c)
118118
119119
120120 func ay () = makeString(["%s", "usdtAssetId"], c)
121121
122122
123123 func az (aA) = makeString(["%s%s", "priceAssetBalance", aA], c)
124124
125125
126126 func aB () = "%s__managerPublicKey"
127127
128128
129129 func aC () = "%s__pendingManagerPublicKey"
130130
131131
132132 func aD () = split(a(ad()), c)
133133
134134
135135 func aE (aF) = split(valueOrElse(getString(aF), U("0", "0", "0", "0", "0")), c)
136136
137137
138138 func aG () = aE(ag())
139139
140140
141141 func aH (af) = aE(ae(af))
142142
143143
144144 func aI (af) = split(a(ae(af)), c)
145145
146146
147147 let aJ = 0
148148
149149 let aK = 1
150150
151151 let aL = 2
152152
153153 let aM = 3
154154
155155 func aN (b,aO,aP,aQ,aR) = {
156156 let V = parseIntValue(aO[P])
157157 let W = parseIntValue(aO[Q])
158158 let X = parseIntValue(aO[R])
159159 let Y = parseIntValue(aO[S])
160160 let Z = parseIntValue(aO[T])
161161 let aS = (V + aP[aJ])
162162 let aT = (W + aP[aK])
163163 let aU = aD()
164164 let K = aU[z]
165165 let aV = value(assetInfo(fromBase58String(K))).decimals
166166 let aW = fraction(aR, e, pow(10, 0, aV, 0, 0, DOWN))
167167 let aX = ((X + aP[aL]) - aR)
168168 let aY = ((Y + aP[aM]) + aW)
169169 let aZ = if ((0 > aT))
170170 then {
171171 let ba = ((aS - aX) - aY)
172172 StringEntry(b, aa(aS, ba, aX, aY, aQ))
173173 }
174174 else StringEntry(b, aa(aS, aT, aX, aY, aQ))
175175 aZ
176176 }
177177
178178
179179 func bb (af,i,ac,bc) = StringEntry(ah("invest", af, toBase58String(bc)), ab(i, ac))
180180
181181
182182 func bd (af,i,ac,bc) = StringEntry(ah("claim", af, toBase58String(bc)), ab(i, ac))
183183
184184
185185 func be (bf,af,bc) = {
186186 let aU = aD()
187187 let F = parseIntValue(aU[t])
188188 let G = parseIntValue(aU[u])
189189 let bg = (F + G)
190190 let k = parseIntValue(aU[v])
191191 let H = parseIntValue(aU[w])
192192 let I = aU[x]
193193 let bh = fromBase58String(I)
194194 let J = parseIntValue(aU[y])
195195 let K = aU[z]
196196 let bi = fromBase58String(K)
197197 let L = parseIntValue(aU[A])
198198 let bj = toString(af)
199199 let bk = aI(bj)
200200 let bl = parseIntValue(bk[P])
201201 let bm = parseIntValue(bk[T])
202202 let bn = if ((F >= bm))
203203 then F
204204 else bm
205205 let bo = if ((height > bg))
206206 then bg
207207 else if ((F > height))
208208 then F
209209 else height
210210 let bp = (bo - bn)
211- let bq = fraction(bl, bp, G)
212- let br = h(bq, L, k, H, J)
213- let bs = (bf == K)
214- let bt = valueOrElse(getBoolean(ak()), false)
215- let bu = [if (!(if (bs)
216- then bt
211+ let bq = split(value(getString(ae(bj))), c)
212+ let V = parseIntValue(bq[P])
213+ let X = parseIntValue(bq[R])
214+ let Y = parseIntValue(bq[S])
215+ let br = ((V - X) - Y)
216+ let bs = h(br, L, k, H, J)
217+ let bt = (bf == K)
218+ let bu = valueOrElse(getBoolean(ak()), false)
219+ let bv = [if (!(if (bt)
220+ then bu
217221 else false))
218222 then true
219223 else throw("USDN claim is disabled")]
220- if ((bu == bu))
224+ if ((bv == bv))
221225 then if ((bf == K))
222- then $Tuple6([0, -(bq), bq, 0], bq, bi, bk, bo, [bq, br])
226+ then $Tuple6([0, -(br), br, 0], br, bi, bk, bo, [br, bs])
223227 else if ((bf == I))
224- then $Tuple6([0, -(bq), 0, br], br, bh, bk, bo, [bq, br])
228+ then $Tuple6([0, -(br), 0, bs], bs, bh, bk, bo, [br, bs])
225229 else throw(("unsupported assetId: " + bf))
226230 else throw("Strict value is not equal to itself.")
227231 }
228232
229233
230-func bv (K,bj,bw,bx) = {
231- let by = value(getInteger(as(K)))
232- let bz = value(getInteger(au(K)))
233- let bA = value(getInteger(am()))
234- let bB = valueOrElse(getInteger(an()), 0)
235- let bC = isDefined(getInteger(aq(0)))
236- let bD = if ((bB > 0))
234+func bw (K,bj,bx,by) = {
235+ let bz = value(getInteger(as(K)))
236+ let bA = value(getInteger(au(K)))
237+ let bB = value(getInteger(am()))
238+ let bC = valueOrElse(getInteger(an()), 0)
239+ let bD = isDefined(getInteger(aq(0)))
240+ let bE = if ((bC > 0))
237241 then {
238- let bE = value(getInteger(ao(bB)))
239- let bF = value(getInteger(aq(bB)))
240- let bG = if ((height > bF))
242+ let bF = value(getInteger(ao(bC)))
243+ let bG = value(getInteger(aq(bC)))
244+ let bH = if ((height > bG))
241245 then {
242- let bH = (bB + 1)
243- let bI = if ((height > (bF + bA)))
246+ let bI = (bC + 1)
247+ let bJ = if ((height > (bG + bB)))
244248 then {
245- let bJ = ((height - bF) % bA)
246- if ((bJ == 0))
247- then ((height - bA) + 1)
248- else (height - bJ)
249+ let bK = ((height - bG) % bB)
250+ if ((bK == 0))
251+ then ((height - bB) + 1)
252+ else (height - bK)
249253 }
250- else (bF + 1)
251- let bK = ((bI + bA) - 1)
252- $Tuple3(bH, bI, bK)
254+ else (bG + 1)
255+ let bL = ((bJ + bB) - 1)
256+ $Tuple3(bI, bJ, bL)
253257 }
254- else $Tuple3(bB, bE, bF)
255- let bH = bG._1
256- let bI = bG._2
257- let bK = bG._3
258- $Tuple3(bH, bI, bK)
258+ else $Tuple3(bC, bF, bG)
259+ let bI = bH._1
260+ let bJ = bH._2
261+ let bL = bH._3
262+ $Tuple3(bI, bJ, bL)
259263 }
260- else if (bC)
264+ else if (bD)
261265 then {
262- let bL = value(getInteger(ao(0)))
263- let bM = value(getInteger(aq(0)))
264- let bN = if ((height > bM))
266+ let bM = value(getInteger(ao(0)))
267+ let bN = value(getInteger(aq(0)))
268+ let bO = if ((height > bN))
265269 then {
266- let bH = (bB + 1)
267- let bI = (bM + 1)
268- let bK = ((bI + bA) - 1)
269- $Tuple3(bH, bI, bK)
270+ let bI = (bC + 1)
271+ let bJ = (bN + 1)
272+ let bL = ((bJ + bB) - 1)
273+ $Tuple3(bI, bJ, bL)
270274 }
271- else $Tuple3(bB, bL, bM)
272- let bH = bN._1
273- let bI = bN._2
274- let bK = bN._3
275- $Tuple3(bH, bI, bK)
275+ else $Tuple3(bC, bM, bN)
276+ let bI = bO._1
277+ let bJ = bO._2
278+ let bL = bO._3
279+ $Tuple3(bI, bJ, bL)
276280 }
277- else $Tuple3(bB, valueOrElse(getInteger(ao(bB)), height), valueOrElse(getInteger(aq(bB)), ((height + bA) - 1)))
278- let bH = bD._1
279- let bI = bD._2
280- let bK = bD._3
281- let bO = valueOrElse(getInteger(av(K, bH)), by)
282- let bP = valueOrElse(getInteger(aw(K, bH, bj)), bz)
281+ else $Tuple3(bC, valueOrElse(getInteger(ao(bC)), height), valueOrElse(getInteger(aq(bC)), ((height + bB) - 1)))
282+ let bI = bE._1
283+ let bJ = bE._2
284+ let bL = bE._3
285+ let bP = valueOrElse(getInteger(av(K, bI)), bz)
286+ let bQ = valueOrElse(getInteger(aw(K, bI, bj)), bA)
283287 let aR = valueOrElse(getInteger(az(bj)), 0)
284- let bQ = min([(bw + aR), bO, bP])
285- let bR = value(getInteger(ar()))
286- let bS = e
287- let bT = {
288- let bU = invoke(addressFromStringValue(value(getString(ax()))), "putOneTknV2WithoutTakeFeeREADONLY", [bS, K], nil)
289- if ($isInstanceOf(bU, "(Int, Int, Int)"))
290- then bU
288+ let bR = min([(bx + aR), bP, bQ])
289+ let bS = value(getInteger(ar()))
290+ let bT = e
291+ let bU = {
292+ let bV = invoke(addressFromStringValue(value(getString(ax()))), "putOneTknV2WithoutTakeFeeREADONLY", [bT, K], nil)
293+ if ($isInstanceOf(bV, "(Int, Int, Int)"))
294+ then bV
291295 else throw("Couldn't cast Any to (Int, Int, Int)")
292296 }
293- if ((bT == bT))
297+ if ((bU == bU))
294298 then {
295- let bV = bT._3
296- let bW = bT._2
297- let bX = bT._1
298- let bY = value(getString(ay()))
299- let bZ = {
300- let bU = invoke(addressFromStringValue(value(getString(ax()))), "getOneTknV2READONLY", [bY, bX], nil)
301- if ($isInstanceOf(bU, "(Int, Int)"))
302- then bU
299+ let bW = bU._3
300+ let bX = bU._2
301+ let bY = bU._1
302+ let bZ = value(getString(ay()))
303+ let ca = {
304+ let bV = invoke(addressFromStringValue(value(getString(ax()))), "getOneTknV2READONLY", [bZ, bY], nil)
305+ if ($isInstanceOf(bV, "(Int, Int)"))
306+ then bV
303307 else throw("Couldn't cast Any to (Int, Int)")
304308 }
305- if ((bZ == bZ))
309+ if ((ca == ca))
306310 then {
307- let ca = bZ._2
308- let cb = bZ._1
309- let cc = fraction(bS, e, cb)
310- let cd = (bK - height)
311- $Tuple10(bQ, bO, bP, bx, bR, cc, cd, bH, bI, bK)
311+ let cb = ca._2
312+ let cc = ca._1
313+ let cd = fraction(bT, e, cc)
314+ let ce = (bL - height)
315+ $Tuple10(bR, bP, bQ, by, bS, cd, ce, bI, bJ, bL)
312316 }
313317 else throw("Strict value is not equal to itself.")
314318 }
315319 else throw("Strict value is not equal to itself.")
316320 }
317321
318322
319-func ce () = {
320- let cf = getString(aB())
321- if ($isInstanceOf(cf, "String"))
323+func cf () = {
324+ let cg = getString(aB())
325+ if ($isInstanceOf(cg, "String"))
322326 then {
323- let cg = cf
324- fromBase58String(cg)
327+ let ch = cg
328+ fromBase58String(ch)
325329 }
326- else if ($isInstanceOf(cf, "Unit"))
330+ else if ($isInstanceOf(cg, "Unit"))
327331 then unit
328332 else throw("Match error")
329333 }
330334
331335
332-func ch () = {
333- let cf = getString(aC())
334- if ($isInstanceOf(cf, "String"))
336+func ci () = {
337+ let cg = getString(aC())
338+ if ($isInstanceOf(cg, "String"))
335339 then {
336- let cg = cf
337- fromBase58String(cg)
340+ let ch = cg
341+ fromBase58String(ch)
338342 }
339- else if ($isInstanceOf(cf, "Unit"))
343+ else if ($isInstanceOf(cg, "Unit"))
340344 then unit
341345 else throw("Match error")
342346 }
343347
344348
345-func ci (cj) = {
346- let ck = throw("Permission denied")
347- let cf = ce()
348- if ($isInstanceOf(cf, "ByteVector"))
349+func cj (ck) = {
350+ let cl = throw("Permission denied")
351+ let cg = cf()
352+ if ($isInstanceOf(cg, "ByteVector"))
349353 then {
350- let cl = cf
351- if ((cj.callerPublicKey == cl))
354+ let cm = cg
355+ if ((ck.callerPublicKey == cm))
352356 then true
353- else ck
357+ else cl
354358 }
355- else if ($isInstanceOf(cf, "Unit"))
356- then if ((cj.caller == this))
359+ else if ($isInstanceOf(cg, "Unit"))
360+ then if ((ck.caller == this))
357361 then true
358- else ck
362+ else cl
359363 else throw("Match error")
360364 }
361365
362366
363-@Callable(cj)
367+@Callable(ck)
364368 func constructor (D,E,F,G,k,K,M) = {
365369 let H = ((100 * 1000) * 1000)
366- let cm = (D + E)
370+ let cn = (D + E)
367371 if (isDefined(getString(ad())))
368372 then throw("already initialized")
369- else if (("3PMEHLx1j6zerarZTYfsGqDeeZqQoMpxq5S" != toString(cj.caller)))
373+ else if (("3PMEHLx1j6zerarZTYfsGqDeeZqQoMpxq5S" != toString(ck.caller)))
370374 then throw("not authorized")
371- else if ((size(cj.payments) != 1))
375+ else if ((size(ck.payments) != 1))
372376 then throw("exactly 1 payment must be attached")
373- else if ((cm >= F))
377+ else if ((cn >= F))
374378 then throw("claimStart must be greater than idoEnd")
375379 else {
376- let cn = value(cj.payments[0])
377- let bh = value(cn.assetId)
378- let co = valueOrErrorMessage(assetInfo(bh), "fail to load ido asset info")
380+ let co = value(ck.payments[0])
381+ let bh = value(co.assetId)
382+ let cp = valueOrErrorMessage(assetInfo(bh), "fail to load ido asset info")
379383 let I = toBase58String(bh)
380- let J = pow(10, 0, co.decimals, 0, 0, DOWN)
384+ let J = pow(10, 0, cp.decimals, 0, 0, DOWN)
381385 let bi = fromBase58String(K)
382- let cp = valueOrErrorMessage(assetInfo(bi), "fail to load price asset info")
383- let L = pow(10, 0, cp.decimals, 0, 0, DOWN)
384- let cq = aG()
385- let cr = [0, 0, 0, 0]
386-[StringEntry(ad(), O(D, E, F, G, k, H, I, J, K, L, M, cn.amount)), aN(ag(), cq, cr, F, 0)]
386+ let cq = valueOrErrorMessage(assetInfo(bi), "fail to load price asset info")
387+ let L = pow(10, 0, cq.decimals, 0, 0, DOWN)
388+ let cr = aG()
389+ let cs = [0, 0, 0, 0]
390+[StringEntry(ad(), O(D, E, F, G, k, H, I, J, K, L, M, co.amount)), aN(ag(), cr, cs, F, 0)]
387391 }
388392 }
389393
390394
391395
392-@Callable(cj)
396+@Callable(ck)
393397 func invest () = {
394398 let aU = aD()
395399 let D = parseIntValue(aU[r])
396400 let E = parseIntValue(aU[s])
397- let cm = (D + E)
401+ let cn = (D + E)
398402 let F = parseIntValue(aU[t])
399403 let G = parseIntValue(aU[u])
400404 let k = parseIntValue(aU[v])
401405 let H = parseIntValue(aU[w])
402406 let I = aU[x]
403407 let bh = fromBase58String(I)
404408 let J = parseIntValue(aU[y])
405409 let K = aU[z]
406410 let bi = fromBase58String(K)
407411 let L = parseIntValue(aU[A])
408- let cs = parseIntValue(aU[B])
409- let af = toString(cj.caller)
412+ let ct = parseIntValue(aU[B])
413+ let af = toString(ck.caller)
410414 if ((D > height))
411415 then throw("ido has not been started yet")
412- else if ((height > cm))
416+ else if ((height > cn))
413417 then throw("ido has been already ended")
414- else if ((size(cj.payments) != 1))
418+ else if ((size(ck.payments) != 1))
415419 then throw("exactly 1 payment is expected")
416420 else {
417- let cn = value(cj.payments[0])
418- let ct = value(cn.assetId)
419- let cu = cn.amount
420- if ((ct != bi))
421- then throw((("invalid payment asset id: " + toBase58String(ct)) + " is expected"))
421+ let co = value(ck.payments[0])
422+ let cu = value(co.assetId)
423+ let cv = co.amount
424+ if ((cu != bi))
425+ then throw((("invalid payment asset id: " + toBase58String(cu)) + " is expected"))
422426 else {
423- let cv = aH(af)
424- let cq = aG()
425- let cw = (parseIntValue(cq[P]) + cu)
426- let cx = (cw * 100)
427- if ((cx > assetBalance(this, bh)))
427+ let cw = aH(af)
428+ let cr = aG()
429+ let cx = (parseIntValue(cr[P]) + cv)
430+ let cy = (cx * 100)
431+ if ((cy > assetBalance(this, bh)))
428432 then throw("IDO asset has been - sold consider to use smaller payment")
429433 else {
430- let cr = [cu, cu, 0, 0]
431-[aN(ae(af), cv, cr, F, 0), aN(ag(), cq, cr, F, 0), bb(af, cu, 0, cj.transactionId)]
434+ let cs = [cv, cv, 0, 0]
435+[aN(ae(af), cw, cs, F, 0), aN(ag(), cr, cs, F, 0), bb(af, cv, 0, ck.transactionId)]
432436 }
433437 }
434438 }
435439 }
436440
437441
438442
439-@Callable(cj)
443+@Callable(ck)
440444 func claim (bf,bj) = {
441- let cy = toString(cj.caller)
442- if ((bj != cy))
445+ let cz = toString(ck.caller)
446+ if ((bj != cz))
443447 then throw("not authorized")
444448 else {
445449 let aU = aD()
446450 let K = aU[z]
447- let cz = be(bf, cj.caller, cj.transactionId)
448- let cr = cz._1
449- let bw = cz._2
450- let cA = cz._3
451- let bk = cz._4
452- let bo = cz._5
453- let cB = cr[aL]
454- let cC = cr[aM]
451+ let cA = be(bf, ck.caller, ck.transactionId)
452+ let cs = cA._1
453+ let bx = cA._2
454+ let cB = cA._3
455+ let bk = cA._4
456+ let bo = cA._5
457+ let cC = cs[aL]
458+ let cD = cs[aM]
455459 let aR = valueOrElse(getInteger(az(bj)), 0)
456460 let aV = value(assetInfo(fromBase58String(K))).decimals
457461 let aZ = if ((bf == K))
458462 then {
459- let cD = bv(K, bj, bw, cr[aL])
460- let bQ = cD._1
461- let bO = cD._2
462- let bP = cD._3
463- let bx = cD._4
464- let bR = cD._5
465- let cc = cD._6
466- let cd = cD._7
467- let bH = cD._8
468- let bI = cD._9
469- let bK = cD._10
470- let bu = [if ((bP > 0))
463+ let cE = bw(K, bj, bx, cs[aL])
464+ let bR = cE._1
465+ let bP = cE._2
466+ let bQ = cE._3
467+ let by = cE._4
468+ let bS = cE._5
469+ let cd = cE._6
470+ let ce = cE._7
471+ let bI = cE._8
472+ let bJ = cE._9
473+ let bL = cE._10
474+ let bv = [if ((bQ > 0))
471475 then true
472- else f("unavailable to claim because user period allowance reached"), if ((bO > 0))
476+ else f("unavailable to claim because user period allowance reached"), if ((bP > 0))
473477 then true
474- else f("unavailable to claim because total period allowance reached"), if ((bQ > 0))
478+ else f("unavailable to claim because total period allowance reached"), if ((bR > 0))
475479 then true
476- else f("nothing to claim"), if ((bR > cc))
480+ else f("nothing to claim"), if ((bS > cd))
477481 then true
478482 else f("unavailable to claim because usdn price lower than usdtPriceAssetAllowableRatio")]
479- if ((bu == bu))
483+ if ((bv == bv))
480484 then {
481- let cE = (bO - bQ)
482- let cF = (bP - bQ)
483- let aZ = if ((aR >= bQ))
484- then [ScriptTransfer(cj.caller, bQ, cA), IntegerEntry(az(bj), (aR - bQ))]
485+ let cF = (bP - bR)
486+ let cG = (bQ - bR)
487+ let aZ = if ((aR >= bR))
488+ then [ScriptTransfer(ck.caller, bR, cB), IntegerEntry(az(bj), (aR - bR))]
485489 else {
486- let cG = ((aR + bw) - bQ)
487-[ScriptTransfer(cj.caller, bQ, cA), aN(ae(bj), bk, cr, bo, 0), aN(ag(), aG(), cr, bo, 0), IntegerEntry(az(bj), cG)]
490+ let cH = ((aR + bx) - bR)
491+[ScriptTransfer(ck.caller, bR, cB), aN(ae(bj), bk, cs, bo, 0), aN(ag(), aG(), cs, bo, 0), IntegerEntry(az(bj), cH)]
488492 }
489- $Tuple2(([IntegerEntry(an(), bH), IntegerEntry(ao(bH), bI), IntegerEntry(aq(bH), bK), IntegerEntry(av(K, bH), cE), IntegerEntry(aw(K, bH, bj), cF), bd(bj, bQ, cC, cj.transactionId)] ++ aZ), unit)
493+ $Tuple2(([IntegerEntry(an(), bI), IntegerEntry(ao(bI), bJ), IntegerEntry(aq(bI), bL), IntegerEntry(av(K, bI), cF), IntegerEntry(aw(K, bI, bj), cG), bd(bj, bR, cD, ck.transactionId)] ++ aZ), unit)
490494 }
491495 else throw("Strict value is not equal to itself.")
492496 }
493497 else {
494- let cH = fraction(aR, e, pow(10, 0, aV, 0, 0, DOWN))
495- $Tuple2([ScriptTransfer(cj.caller, (bw + cH), cA), IntegerEntry(az(bj), 0), aN(ae(bj), bk, cr, bo, aR), aN(ag(), aG(), cr, bo, aR), bd(bj, cB, (cC + cH), cj.transactionId)], unit)
498+ let cI = fraction(aR, e, pow(10, 0, aV, 0, 0, DOWN))
499+ $Tuple2([ScriptTransfer(ck.caller, (bx + cI), cB), IntegerEntry(az(bj), 0), aN(ae(bj), bk, cs, bo, aR), aN(ag(), aG(), cs, bo, aR), bd(bj, cC, (cD + cI), ck.transactionId)], unit)
496500 }
497501 aZ
498502 }
499503 }
500504
501505
502506
503-@Callable(cj)
507+@Callable(ck)
504508 func claimREADONLY (bf,bj) = {
505- let cz = be(bf, addressFromStringValue(bj), fromBase58String(""))
506- let cr = cz._1
507- let bw = cz._2
508- let cA = cz._3
509- let bk = cz._4
510- let bo = cz._5
511- let cI = cz._6
512- let cJ = cI[0]
513- let cK = cI[1]
514- $Tuple2(nil, makeString(["%s%d%d", bj, toString(cJ), toString(cK)], c))
509+ let cA = be(bf, addressFromStringValue(bj), fromBase58String(""))
510+ let cs = cA._1
511+ let bx = cA._2
512+ let cB = cA._3
513+ let bk = cA._4
514+ let bo = cA._5
515+ let cJ = cA._6
516+ let cK = cJ[0]
517+ let cL = cJ[1]
518+ $Tuple2(nil, makeString(["%s%d%d", bj, toString(cK), toString(cL)], c))
515519 }
516520
517521
518522
519-@Callable(cj)
523+@Callable(ck)
520524 func claimV2READONLY (bf,bj) = {
521- let cz = be(bf, addressFromStringValue(bj), fromBase58String(""))
522- let cr = cz._1
523- let bw = cz._2
524- let cA = cz._3
525- let bk = cz._4
526- let bo = cz._5
527- let cI = cz._6
528- let cJ = cI[0]
529- let cK = cI[1]
525+ let cA = be(bf, addressFromStringValue(bj), fromBase58String(""))
526+ let cs = cA._1
527+ let bx = cA._2
528+ let cB = cA._3
529+ let bk = cA._4
530+ let bo = cA._5
531+ let cJ = cA._6
532+ let cK = cJ[0]
533+ let cL = cJ[1]
530534 let aU = aD()
531535 let K = aU[z]
532536 let aR = valueOrElse(getInteger(az(bj)), 0)
533- let cH = (aR * 100)
534- let cL = (cK + cH)
535- let cM = bv(K, bj, bw, cr[aL])
536- let bQ = cM._1
537- let bO = cM._2
538- let bP = cM._3
539- let bx = cM._4
540- let bR = cM._5
541- let cc = cM._6
542- let cd = cM._7
543- let bH = cM._8
544- let bI = cM._9
545- let bK = cM._10
546- let cN = valueOrElse(getInteger(aq(bH)), 0)
547- let cO = (parseIntValue(aI(bj)[R]) - aR)
548- let cP = if ((height > cN))
537+ let cI = (aR * 100)
538+ let cM = (cL + cI)
539+ let cN = bw(K, bj, bx, cs[aL])
540+ let bR = cN._1
541+ let bP = cN._2
542+ let bQ = cN._3
543+ let by = cN._4
544+ let bS = cN._5
545+ let cd = cN._6
546+ let ce = cN._7
547+ let bI = cN._8
548+ let bJ = cN._9
549+ let bL = cN._10
550+ let cO = valueOrElse(getInteger(aq(bI)), 0)
551+ let cP = (parseIntValue(aI(bj)[R]) - aR)
552+ let cQ = if ((height > cO))
549553 then {
550- let cQ = value(getInteger(am()))
551- let cR = value(getInteger(au(K)))
552- let cS = value(getInteger(as(K)))
553- makeString(["%d%d%d%d%d%d", toString(cL), toString(cR), toString(cS), toString(bR), toString(cc), toString(cQ), toString(cO)], c)
554+ let cR = value(getInteger(am()))
555+ let cS = value(getInteger(au(K)))
556+ let cT = value(getInteger(as(K)))
557+ makeString(["%d%d%d%d%d%d", toString(cM), toString(cS), toString(cT), toString(bS), toString(cd), toString(cR), toString(cP)], c)
554558 }
555- else makeString(["%d%d%d%d%d%d", toString(cL), toString(bQ), toString(bO), toString(bR), toString(cc), toString(cd), toString(cO)], c)
556- $Tuple2(nil, cP)
559+ else makeString(["%d%d%d%d%d%d", toString(cM), toString(bR), toString(bP), toString(bS), toString(cd), toString(ce), toString(cP)], c)
560+ $Tuple2(nil, cQ)
557561 }
558562
559563
560564
561-@Callable(cj)
562-func setManager (cT) = {
563- let cU = ci(cj)
564- if ((cU == cU))
565+@Callable(ck)
566+func setManager (cU) = {
567+ let cV = cj(ck)
568+ if ((cV == cV))
565569 then {
566- let cV = fromBase58String(cT)
567- if ((cV == cV))
568- then [StringEntry(aC(), cT)]
570+ let cW = fromBase58String(cU)
571+ if ((cW == cW))
572+ then [StringEntry(aC(), cU)]
569573 else throw("Strict value is not equal to itself.")
570574 }
571575 else throw("Strict value is not equal to itself.")
572576 }
573577
574578
575579
576-@Callable(cj)
580+@Callable(ck)
577581 func confirmManager () = {
578- let cW = ch()
579- let cX = if (isDefined(cW))
582+ let cX = ci()
583+ let cY = if (isDefined(cX))
580584 then true
581585 else throw("No pending manager")
582- if ((cX == cX))
586+ if ((cY == cY))
583587 then {
584- let cY = if ((cj.callerPublicKey == value(cW)))
588+ let cZ = if ((ck.callerPublicKey == value(cX)))
585589 then true
586590 else throw("You are not pending manager")
587- if ((cY == cY))
588- then [StringEntry(aB(), toBase58String(value(cW))), DeleteEntry(aC())]
591+ if ((cZ == cZ))
592+ then [StringEntry(aB(), toBase58String(value(cX))), DeleteEntry(aC())]
589593 else throw("Strict value is not equal to itself.")
590594 }
591595 else throw("Strict value is not equal to itself.")
592596 }
593597
594598
595-@Verifier(cZ)
596-func da () = {
597- let db = {
598- let cf = ce()
599- if ($isInstanceOf(cf, "ByteVector"))
599+@Verifier(da)
600+func db () = {
601+ let dc = {
602+ let cg = cf()
603+ if ($isInstanceOf(cg, "ByteVector"))
600604 then {
601- let cl = cf
602- cl
605+ let cm = cg
606+ cm
603607 }
604- else if ($isInstanceOf(cf, "Unit"))
605- then cZ.senderPublicKey
608+ else if ($isInstanceOf(cg, "Unit"))
609+ then da.senderPublicKey
606610 else throw("Match error")
607611 }
608- sigVerify(cZ.bodyBytes, cZ.proofs[0], db)
612+ sigVerify(da.bodyBytes, da.proofs[0], dc)
609613 }
610614

github/deemru/w8io/026f985 
153.56 ms