tx · 7npvjwSRh6LG5mXgESqSSetbVn28p92CmpgdhvJHSmFM

3MvZpvvbmovEt3pvdDZKvhKRjjQxdbUD6Tv:  -0.02400000 Waves

2022.11.02 16:01 [2299525] smart account 3MvZpvvbmovEt3pvdDZKvhKRjjQxdbUD6Tv > SELF 0.00000000 Waves

{ "type": 13, "id": "7npvjwSRh6LG5mXgESqSSetbVn28p92CmpgdhvJHSmFM", "fee": 2400000, "feeAssetId": null, "timestamp": 1667394154737, "version": 1, "sender": "3MvZpvvbmovEt3pvdDZKvhKRjjQxdbUD6Tv", "senderPublicKey": "39YkRD2qWXTcdNBr4CbDnm8g8SAB2FKVaDeGYahcFHHx", "proofs": [ "5fKEDW1wrCFwTy4fDSCUTc9Rdk4wmM1cbFZ24etuqbmBSnUHbvSGmGChsdmbNTiDz1wRAYSV64LaK33q3AHsqUFi" ], "script": "base64:AAIFAAAAAAAADfwIAhIJCgcBAQEBAQgBEgASBAoCCAgSBAoCCAgSBAoCCAgSAwoBCBIAIg9nZXRTdHJpbmdPckZhaWwiA2tleSIDU0VQIghCVUZTQ0FMRSIGc2NhbGU4Igh0aHJvd0VyciIDbXNnIh1jb252ZXJ0UHJpY2VBc3NldEludG9JZG9Bc3NldCIQcHJpY2VBc3NldEFtb3VudCIOcHJpY2VBc3NldE1VTFQiBXByaWNlIglwcmljZU1VTFQiDGlkb0Fzc2V0TVVMVCIPYlByaWNlQXNzZXRNVUxUIg1iSWRvQXNzZXRNVUxUIg5iUHJpY2VBc3NldEJVRiIPYkFtb3VudEFzc2V0QlVGIg5JZHhDZmdJZG9TdGFydCIRSWR4Q2ZnSWRvRHVyYXRpb24iEElkeENmZ0NsYWltU3RhcnQiE0lkeENmZ0NsYWltRHVyYXRpb24iC0lkeENmZ1ByaWNlIg9JZHhDZmdQcmljZU11bHQiEElkeENmZ0lkb0Fzc2V0SWQiEklkeENmZ0lkb0Fzc2V0TXVsdCISSWR4Q2ZnUHJpY2VBc3NldElkIhRJZHhDZmdQcmljZUFzc2V0TXVsdCIVSWR4Q2ZnTWluSW52ZXN0QW1vdW50Ig1mcm9tYXRDb25maWdTIghpZG9TdGFydCILaWRvRHVyYXRpb24iCmNsYWltU3RhcnQiDWNsYWltRHVyYXRpb24iCXByaWNlTXVsdCIMaWRvQXNzZXRJZDU4IgxpZG9Bc3NldE11bHQiDnByaWNlQXNzZXRJZDU4Ig5wcmljZUFzc2V0TXVsdCIPbWluSW52ZXN0QW1vdW50IhN0b3RhbElkb0Fzc2V0VG9TZWxsIgxmcm9tYXRDb25maWciEUlkeEludlRvdGFsQW1vdW50IhVJZHhJbnZSZW1haW5pbmdBbW91bnQiHUlkeEludkNsYWltZWRQcmljZUFzc2V0QW1vdW50IhtJZHhJbnZDbGFpbWVkSWRvQXNzZXRBbW91bnQiF0lkeEludkxhc3RDbGFpbWVkSGVpZ2h0Ig9mb3JtYXRJbnZlc3RvclMiC3RvdGFsQW1vdW50Ig9yZW1haW5pbmdBbW91bnQiF2NsYWltZWRQcmljZUFzc2V0QW1vdW50IhVjbGFpbWVkSWRvQXNzZXRBbW91bnQiEWxhc3RDbGFpbWVkSGVpZ2h0Ig5mb3JtYXRJbnZlc3RvciITZm9ybWF0SGlzdG9yeVJlY29yZCIOaWRvQXNzZXRBbW91bnQiCWtleUNvbmZpZyILa2V5SW52ZXN0b3IiC3VzZXJBZGRyZXNzIglrZXlUb3RhbHMiGWtleU9wZXJhdGlvbkhpc3RvcnlSZWNvcmQiBHR5cGUiBnR4SWQ1OCIUa2V5VVNETkNsYWltRGlzYWJsZWQiFWtleVVTRE5DbGFpbUVuZEhlaWdodCIPa2V5UGVyaW9kTGVuZ3RoIhBrZXlDdXJyZW50UGVyaW9kIhRrZXlQZXJpb2RTdGFydEhlaWdodCIJcGVyaW9kTnVtIhJrZXlQZXJpb2RFbmRIZWlnaHQiH2tleVVzZHRQcmljZUFzc2V0QWxsb3dhYmxlUmF0aW8iF2tleVRvdGFsUGVyaW9kQWxsb3dhbmNlIgdhc3NldElkIhZrZXlVc2VyUGVyaW9kQWxsb3dhbmNlIh5rZXlQZXJpb2RUb3RhbEF2YWlsYWJsZVRvQ2xhaW0iHWtleVBlcmlvZFVzZXJBdmFpbGFibGVUb0NsYWltIhtrZXlVc2R0UHJpY2VBc3NldFN0YWJsZVBvb2wiDmtleVVzZHRBc3NldElkIhNrZXlNYW5hZ2VyUHVibGljS2V5IhprZXlQZW5kaW5nTWFuYWdlclB1YmxpY0tleSIPcmVhZENvbmZpZ0FycmF5IiNyZWFkVG90YWxzQXJyYXlPckRlZmF1bHRCeUN1c3RvbUtleSIJY3VzdG9tS2V5IhhyZWFkVG90YWxzQXJyYXlPckRlZmF1bHQiGnJlYWRJbnZlc3RvckFycmF5T3JEZWZhdWx0IhdyZWFkSW52ZXN0b3JBcnJheU9yRmFpbCIVSWR4RGlmZlRvdGFsSW5jcmVtZW50IiRJZHhEaWZmUmVtYWluaW5nUHJpY2VBbW91bnRJbmNyZW1lbnQiIklkeERpZmZDbGFpbWVkUHJpY2VBbW91bnRJbmNyZW1lbnQiJUlkeERpZmZDbGFpbWVkSWRvQXNzZXRBbW91bnRJbmNyZW1lbnQiC1RvdGFsc0VudHJ5IglvcmlnQXJyYXkiDWluY3JlbWVudERpZmYiFG5ld0xhc3RDbGFpbWVkSGVpZ2h0Ig5uZXdUb3RhbEFtb3VudCISbmV3UmVtYWluaW5nQW1vdW50IhpuZXdDbGFpbWVkUHJpY2VBc3NldEFtb3VudCIYbmV3Q2xhaW1lZElkb0Fzc2V0QW1vdW50IhtJbnZlc3RPcGVyYXRpb25IaXN0b3J5RW50cnkiBHR4SWQiGkNsYWltT3BlcmF0aW9uSGlzdG9yeUVudHJ5Ig1pbnRlcm5hbENsYWltIhBjbGFpbWVkQXNzZXRJZDU4IghjZmdBcnJheSIIY2xhaW1FbmQiCmlkb0Fzc2V0SWQiDHByaWNlQXNzZXRJZCINdXNlckFkZHJlc3M1OCIPb3JpZ0ludmVzdEFycmF5IhFpbnZlc3RUb3RhbEFtb3VudCIaaW52ZXN0TGFzdENsYWltZWRIZWlnaHRUTVAiF2ludmVzdExhc3RDbGFpbWVkSGVpZ2h0IhRuZXdDbGFpbVBlcmlvZEhlaWdodCIOY2xhaW1pbmdCbG9ja3MiGXRvdGFsVXNlckF2YWlsYWJsZVRvQ2xhaW0iFmNsYWltaW5nSWRvQXNzZXRBbW91bnQiBmlzVVNETiITaXNVU0ROQ2xhaW1EaXNhYmxlZCIQaXNVU0ROQ2xhaW1FbmRlZCIHJG1hdGNoMCIDZW5kIgZjaGVja3MiHnRvdGFsUGVyaW9kUHJpY2VBc3NldEFsbG93YW5jZSIddXNlclBlcmlvZFByaWNlQXNzZXRBbGxvd2FuY2UiDHBlcmlvZExlbmd0aCINY3VycmVudFBlcmlvZCINJHQwMTExMDExMjAxOSIVbGFzdFBlcmlvZFN0YXJ0SGVpZ2h0IhNsYXN0UGVyaW9kRW5kSGVpZ2h0Ig0kdDAxMTM2OTExNzUxIhR1cGRhdGVkQ3VycmVudFBlcmlvZCILcGVyaW9kU3RhcnQiCXBlcmlvZEVuZCIbcGVyaW9kVG90YWxBdmFpbGFibGVUb0NsYWltIhpwZXJpb2RVc2VyQXZhaWxhYmxlVG9DbGFpbSIhYXZhaWxhYmxlQ2xhaW1pbmdQcmljZUFzc2V0QW1vdW50Ihx1c2R0UHJpY2VBc3NldEFsbG93YWJsZVJhdGlvIhtwdXRPbmVUa25WMlByaWNlQXNzZXRBbW91bnQiDSR0MDEyNjg3MTI5NDAiAUAiBWJvbnVzIglmZWVBbW91bnQiCGxwQW1vdW50Igt1c2R0QXNzZXRJZCINJHQwMTMwMDIxMzIyMCIUZ2V0T25lVGtuVjJGZWVBbW91bnQiCnVzZHRBbW91bnQiGmN1cnJlbnRVc2R0UHJpY2VBc3NldFJhdGlvIhNlbmRQZXJpb2RCbG9ja3NMZWZ0IhZtYW5hZ2VyUHVibGljS2V5T3JVbml0IgFzIh1wZW5kaW5nTWFuYWdlclB1YmxpY0tleU9yVW5pdCILbXVzdE1hbmFnZXIiAWkiAnBkIgJwayIGaWRvRW5kIgNwbXQiDGlkb0Fzc2V0SW5mbyIOcHJpY2VBc3NldEluZm8iD29yaWdUb3RhbHNBcnJheSIKdG90YWxzRGlmZiIObWluSXZlc3RBbW91bnQiCnBtdEFzc2V0SWQiCXBtdEFtb3VudCIRb3JpZ0ludmVzdG9yQXJyYXkiE25ld1ByaWNlVG90YWxBbW91bnQiFnJlcXVpcmVkSWRvQXNzZXRBbW91bnQiD2NhbGxlckFkZHJlc3M1OCIQY2xhaW1SZXN1bHRUdXBsZSIJb3V0QW1vdW50IgpvdXRBc3NldElkIhVhdmFpbGFibGVUb0NsYWltQXJyYXkiH3BlcmlvZEF2YWlsYWJsZUlkb0Ftb3VudFRvQ2xhaW0iJXBlcmlvZEF2YWlsYWJsZVVzZXJQcmljZUFtb3VudFRvQ2xhaW0iJnBlcmlvZEF2YWlsYWJsZVRvdGFsUHJpY2VBbW91bnRUb0NsYWltIhZjdXJyZW50UHJpY2VBc3NldFJhdGlvIhJlbmRQcmlvZEJsb2Nrc0xlZnQiGmNsYWltZWRQcmljZUFtb3VudEZyb21EaWZmIh1jbGFpbWVkSWRvQXNzZXRBbW91bnRGcm9tRGlmZiIidXBkYXRlZFBlcmlvZFRvdGFsQXZhaWxhYmxlVG9DbGFpbSIhdXBkYXRlZFBlcmlvZFVzZXJBdmFpbGFibGVUb0NsYWltIhlhdmFpbGFibGVJZG9BbW91bnRUb0NsYWltIhthdmFpbGFibGVQcmljZUFtb3VudFRvQ2xhaW0iDHJlc3VsdFN0cmluZyIXcGVuZGluZ01hbmFnZXJQdWJsaWNLZXkiC2NoZWNrQ2FsbGVyIhVjaGVja01hbmFnZXJQdWJsaWNLZXkiAnBtIgVoYXNQTSIHY2hlY2tQTSICdHgiBnZlcmlmeSIPdGFyZ2V0UHVibGljS2V5AAAAPgEAAAAB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", "chainId": 84, "height": 2299525, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: jsupw7HNM16HghuxVRZ6ByGuFsj1qwanVSqxhtUgriZ Next: 3ZQ1FzYhuRtanVvCLvTZDi35rzHSoJHjvUjeH9Ruzexd Diff:
OldNewDifferences
225225 then {
226226 let br = value(getInteger(as(K)))
227227 let bs = value(getInteger(au(K)))
228- let bt = valueOrElse(getInteger(an()), 0)
229- let bu = valueOrElse(getInteger(av(K, bt)), br)
230- let bv = valueOrElse(getInteger(aw(K, bt, bc)), bs)
231- let bw = min([bj, bu, bv])
232- let bx = value(getInteger(ar()))
233- let by = e
234- let bz = {
235- let bA = invoke(addressFromStringValue(value(getString(ax()))), "putOneTknV2WithoutTakeFeeREADONLY", [by, bb], nil)
236- if ($isInstanceOf(bA, "(Int, Int, Int)"))
237- then bA
228+ let bt = value(getInteger(am()))
229+ let bu = valueOrElse(getInteger(an()), 0)
230+ let bv = if ((bu > 0))
231+ then {
232+ let bw = value(getInteger(ao((bu - 1))))
233+ let bx = value(getInteger(aq((bu - 1))))
234+ let by = if ((height > bx))
235+ then {
236+ let bz = (bu + 1)
237+ let bA = (bx + 1)
238+ let bB = ((bA + bt) - 1)
239+ $Tuple3(bz, bA, bB)
240+ }
241+ else $Tuple3(bu, bw, bx)
242+ let bz = by._1
243+ let bA = by._2
244+ let bB = by._3
245+ $Tuple3(bz, bA, bB)
246+ }
247+ else $Tuple3(bu, valueOrElse(getInteger(ao(bu)), height), valueOrElse(getInteger(aq(bu)), ((height + bt) - 1)))
248+ let bz = bv._1
249+ let bA = bv._2
250+ let bB = bv._3
251+ let bC = valueOrElse(getInteger(av(K, bz)), br)
252+ let bD = valueOrElse(getInteger(aw(K, bz, bc)), bs)
253+ let bE = min([bj, bC, bD])
254+ let bF = value(getInteger(ar()))
255+ let bG = e
256+ let bH = {
257+ let bI = invoke(addressFromStringValue(value(getString(ax()))), "putOneTknV2WithoutTakeFeeREADONLY", [bG, K], nil)
258+ if ($isInstanceOf(bI, "(Int, Int, Int)"))
259+ then bI
238260 else throw("Couldn't cast Any to (Int, Int, Int)")
239261 }
240- if ((bz == bz))
262+ if ((bH == bH))
241263 then {
242- let bB = bz._3
243- let bC = bz._2
244- let bD = bz._1
245- let bE = value(fromBase58String(value(getString(ay()))))
246- let bF = {
247- let bA = invoke(addressFromStringValue(value(getString(ax()))), "getOneTknV2READONLY", [bE, bD], nil)
248- if ($isInstanceOf(bA, "(Int, Int)"))
249- then bA
264+ let bJ = bH._3
265+ let bK = bH._2
266+ let bL = bH._1
267+ let bM = value(getString(ay()))
268+ let bN = {
269+ let bI = invoke(addressFromStringValue(value(getString(ax()))), "getOneTknV2READONLY", [bM, bL], nil)
270+ if ($isInstanceOf(bI, "(Int, Int)"))
271+ then bI
250272 else throw("Couldn't cast Any to (Int, Int)")
251273 }
252- if ((bF == bF))
274+ if ((bN == bN))
253275 then {
254- let bG = bF._2
255- let bH = bF._1
256- let bI = fraction(bH, by, e)
257- let bJ = (valueOrElse(getInteger(aq(bt)), aZ) - height)
276+ let bO = bN._2
277+ let bP = bN._1
278+ let bQ = fraction(bP, bG, e)
279+ let bR = (bB - height)
258280 if ((aX == K))
259- then $Tuple6([0, -(bw), bw, 0], bw, bb, bd, bh, [bj, bk, bw, bu, bx, bI, bJ])
281+ then $Tuple6([0, -(bE), bE, 0], bE, bb, bd, bh, [bz, bA, bB, bj, bk, bE, bC, bF, bQ, bR])
260282 else if ((aX == I))
261- then $Tuple6([0, -(bw), 0, bw], bk, ba, bd, bh, [bj, bk, bw, bu, bI, bx])
283+ then $Tuple6([0, -(bE), 0, bE], bk, ba, bd, bh, [bz, bA, bB, bj, bk, bE, bC, bF, bQ, bR])
262284 else f(makeString(["unsupported assetId:", aX], " "))
263285 }
264286 else throw("Strict value is not equal to itself.")
269291 }
270292
271293
272-func bK () = {
294+func bS () = {
273295 let bo = getString(az())
274296 if ($isInstanceOf(bo, "String"))
275297 then {
276- let bL = bo
277- fromBase58String(bL)
298+ let bT = bo
299+ fromBase58String(bT)
278300 }
279301 else if ($isInstanceOf(bo, "Unit"))
280302 then unit
282304 }
283305
284306
285-func bM () = {
307+func bU () = {
286308 let bo = getString(aA())
287309 if ($isInstanceOf(bo, "String"))
288310 then {
289- let bL = bo
290- fromBase58String(bL)
311+ let bT = bo
312+ fromBase58String(bT)
291313 }
292314 else if ($isInstanceOf(bo, "Unit"))
293315 then unit
295317 }
296318
297319
298-func bN (bO) = {
299- let bP = throw("Permission denied")
300- let bo = bK()
320+func bV (bW) = {
321+ let bX = throw("Permission denied")
322+ let bo = bS()
301323 if ($isInstanceOf(bo, "ByteVector"))
302324 then {
303- let bQ = bo
304- if ((bO.callerPublicKey == bQ))
325+ let bY = bo
326+ if ((bW.callerPublicKey == bY))
305327 then true
306- else bP
328+ else bX
307329 }
308330 else if ($isInstanceOf(bo, "Unit"))
309- then if ((bO.caller == this))
331+ then if ((bW.caller == this))
310332 then true
311- else bP
333+ else bX
312334 else throw("Match error")
313335 }
314336
315337
316-@Callable(bO)
338+@Callable(bW)
317339 func constructor (D,E,F,G,k,K,M) = {
318340 let H = ((100 * 1000) * 1000)
319- let bR = (D + E)
341+ let bZ = (D + E)
320342 if (isDefined(getString(ad())))
321343 then throw("already initialized")
322- else if (("3PMEHLx1j6zerarZTYfsGqDeeZqQoMpxq5S" != toString(bO.caller)))
344+ else if (("3PMEHLx1j6zerarZTYfsGqDeeZqQoMpxq5S" != toString(bW.caller)))
323345 then throw("not authorized")
324- else if ((size(bO.payments) != 1))
346+ else if ((size(bW.payments) != 1))
325347 then throw("exactly 1 payment must be attached")
326- else if ((bR >= F))
348+ else if ((bZ >= F))
327349 then throw("claimStart must be greater than idoEnd")
328350 else {
329- let bS = value(bO.payments[0])
330- let ba = value(bS.assetId)
331- let bT = valueOrErrorMessage(assetInfo(ba), "fail to load ido asset info")
351+ let ca = value(bW.payments[0])
352+ let ba = value(ca.assetId)
353+ let cb = valueOrErrorMessage(assetInfo(ba), "fail to load ido asset info")
332354 let I = toBase58String(ba)
333- let J = pow(10, 0, bT.decimals, 0, 0, DOWN)
355+ let J = pow(10, 0, cb.decimals, 0, 0, DOWN)
334356 let bb = fromBase58String(K)
335- let bU = valueOrErrorMessage(assetInfo(bb), "fail to load price asset info")
336- let L = pow(10, 0, bU.decimals, 0, 0, DOWN)
337- let bV = aE()
338- let bW = [0, 0, 0, 0]
339-[StringEntry(ad(), O(D, E, F, G, k, H, I, J, K, L, M, bS.amount)), aL(ag(), bV, bW, F)]
357+ let cc = valueOrErrorMessage(assetInfo(bb), "fail to load price asset info")
358+ let L = pow(10, 0, cc.decimals, 0, 0, DOWN)
359+ let cd = aE()
360+ let ce = [0, 0, 0, 0]
361+[StringEntry(ad(), O(D, E, F, G, k, H, I, J, K, L, M, ca.amount)), aL(ag(), cd, ce, F)]
340362 }
341363 }
342364
343365
344366
345-@Callable(bO)
367+@Callable(bW)
346368 func invest () = {
347369 let aY = aB()
348370 let D = parseIntValue(aY[r])
349371 let E = parseIntValue(aY[s])
350- let bR = (D + E)
372+ let bZ = (D + E)
351373 let F = parseIntValue(aY[t])
352374 let G = parseIntValue(aY[u])
353375 let k = parseIntValue(aY[v])
358380 let K = aY[z]
359381 let bb = fromBase58String(K)
360382 let L = parseIntValue(aY[A])
361- let bX = parseIntValue(aY[B])
362- let af = toString(bO.caller)
383+ let cf = parseIntValue(aY[B])
384+ let af = toString(bW.caller)
363385 if ((D > height))
364386 then throw("ido has not been started yet")
365- else if ((height > bR))
387+ else if ((height > bZ))
366388 then throw("ido has been already ended")
367- else if ((size(bO.payments) != 1))
389+ else if ((size(bW.payments) != 1))
368390 then throw("exactly 1 payment is expected")
369391 else {
370- let bS = value(bO.payments[0])
371- let bY = value(bS.assetId)
372- let bZ = bS.amount
373- if ((bY != bb))
374- then throw((("invalid payment asset id: " + toBase58String(bY)) + " is expected"))
392+ let ca = value(bW.payments[0])
393+ let cg = value(ca.assetId)
394+ let ch = ca.amount
395+ if ((cg != bb))
396+ then throw((("invalid payment asset id: " + toBase58String(cg)) + " is expected"))
375397 else {
376- let ca = aF(af)
377- let bV = aE()
378- let cb = (parseIntValue(bV[P]) + bZ)
379- let cc = (cb * 100)
380- if ((cc > assetBalance(this, ba)))
398+ let ci = aF(af)
399+ let cd = aE()
400+ let cj = (parseIntValue(cd[P]) + ch)
401+ let ck = (cj * 100)
402+ if ((ck > assetBalance(this, ba)))
381403 then throw("IDO asset has been - sold consider to use smaller payment")
382404 else {
383- let bW = [bZ, bZ, 0, 0]
384-[aL(ae(af), ca, bW, F), aL(ag(), bV, bW, F), aT(af, bZ, 0, bO.transactionId)]
405+ let ce = [ch, ch, 0, 0]
406+[aL(ae(af), ci, ce, F), aL(ag(), cd, ce, F), aT(af, ch, 0, bW.transactionId)]
385407 }
386408 }
387409 }
389411
390412
391413
392-@Callable(bO)
414+@Callable(bW)
393415 func claim (aX,bc) = {
394- let cd = toString(bO.caller)
395- if ((bc != cd))
416+ let cl = toString(bW.caller)
417+ if ((bc != cl))
396418 then f("not authorized")
397419 else {
398- let ce = aW(aX, bO.caller, bO.transactionId)
399- let bW = ce._1
400- let cf = ce._2
401- let cg = ce._3
402- let bd = ce._4
403- let bh = ce._5
404- let ch = ce._6
405- let bj = ch[0]
406- let ci = ch[1]
407- let cj = ch[2]
408- let ck = ch[3]
420+ let bb = aB()[z]
421+ let cm = aW(aX, bW.caller, bW.transactionId)
422+ let ce = cm._1
423+ let cn = cm._2
424+ let co = cm._3
425+ let bd = cm._4
426+ let bh = cm._5
427+ let cp = cm._6
428+ let bu = cp[0]
429+ let bA = cp[1]
430+ let bB = cp[2]
431+ let bj = cp[3]
432+ let cq = cp[4]
433+ let cr = cp[5]
434+ let cs = cp[6]
435+ let bF = cp[7]
436+ let ct = cp[8]
437+ let cu = cp[9]
409438 let bq = [if (if ((bj > 0))
410439 then true
411- else (ci > 0))
440+ else (cq > 0))
412441 then true
413- else f("nothing to claim"), if ((cj > 0))
442+ else f("nothing to claim"), if ((cr > 0))
414443 then true
415- else f("unavailable to claim because user period allowance reached"), if ((ck > 0))
444+ else f("unavailable to claim because user period allowance reached"), if ((cs > 0))
416445 then true
417446 else f("unavailable to claim because total period allowance reached")]
418447 if ((bq == bq))
419448 then {
420- let cl = bW[aJ]
421- let cm = bW[aK]
422- $Tuple2([ScriptTransfer(bO.caller, cf, cg), aL(ae(bc), bd, bW, bh), aL(ag(), aE(), bW, bh), aV(bc, cl, cm, bO.transactionId)], unit)
449+ let cv = ce[aJ]
450+ let cw = ce[aK]
451+ let cx = (cs - cv)
452+ let cy = (cr - cv)
453+ $Tuple2([ScriptTransfer(bW.caller, cn, co), aL(ae(bc), bd, ce, bh), aL(ag(), aE(), ce, bh), IntegerEntry(an(), bu), IntegerEntry(ao(bu), bA), IntegerEntry(aq(bu), bB), IntegerEntry(av(bb, bu), cx), IntegerEntry(aw(bb, bu, bc), cy), aV(bc, cv, cw, bW.transactionId)], unit)
423454 }
424455 else throw("Strict value is not equal to itself.")
425456 }
427458
428459
429460
430-@Callable(bO)
461+@Callable(bW)
431462 func claimREADONLY (aX,bc) = {
432- let ce = aW(aX, addressFromStringValue(bc), fromBase58String(""))
433- let bW = ce._1
434- let cf = ce._2
435- let cg = ce._3
436- let bd = ce._4
437- let bh = ce._5
438- let ch = ce._6
439- let cn = ch[1]
440- let co = ch[2]
441- $Tuple2(nil, makeString(["%s%d%d", bc, toString(cn), toString(co)], c))
463+ let cm = aW(aX, addressFromStringValue(bc), fromBase58String(""))
464+ let ce = cm._1
465+ let cn = cm._2
466+ let co = cm._3
467+ let bd = cm._4
468+ let bh = cm._5
469+ let cp = cm._6
470+ let cz = cp[4]
471+ let cA = cp[5]
472+ $Tuple2(nil, makeString(["%s%d%d", bc, toString(cA), toString(cz)], c))
442473 }
443474
444475
445476
446-@Callable(bO)
477+@Callable(bW)
447478 func claimV2READONLY (aX,bc) = {
448- let ce = aW(aX, addressFromStringValue(bc), fromBase58String(""))
449- let bW = ce._1
450- let cf = ce._2
451- let cg = ce._3
452- let bd = ce._4
453- let bh = ce._5
454- let ch = ce._6
455- let bj = ch[0]
456- let ci = ch[1]
457- let cj = ch[2]
458- let ck = ch[3]
459- let bx = ch[4]
460- let cp = ch[5]
461- let cq = ch[6]
462- let cr = makeString(["%d%d%d%d%d%d%d", toString(bj), toString(ci), toString(cj), toString(ck), toString(bx), toString(cp), toString(cq)], c)
463- $Tuple2(nil, cr)
479+ let cm = aW(aX, addressFromStringValue(bc), fromBase58String(""))
480+ let ce = cm._1
481+ let cn = cm._2
482+ let co = cm._3
483+ let bd = cm._4
484+ let bh = cm._5
485+ let cp = cm._6
486+ let bu = cp[0]
487+ let bA = cp[1]
488+ let bB = cp[2]
489+ let bj = cp[3]
490+ let cq = cp[4]
491+ let cr = cp[5]
492+ let cs = cp[6]
493+ let bF = cp[7]
494+ let ct = cp[8]
495+ let cu = cp[9]
496+ let cB = makeString(["%d%d%d%d%d%d%d", toString(bj), toString(cq), toString(cr), toString(cs), toString(bF), toString(ct), toString(cu)], c)
497+ $Tuple2(nil, cB)
464498 }
465499
466500
467501
468-@Callable(bO)
469-func setManager (cs) = {
470- let ct = bN(bO)
471- if ((ct == ct))
502+@Callable(bW)
503+func setManager (cC) = {
504+ let cD = bV(bW)
505+ if ((cD == cD))
472506 then {
473- let cu = fromBase58String(cs)
474- if ((cu == cu))
475- then [StringEntry(aA(), cs)]
507+ let cE = fromBase58String(cC)
508+ if ((cE == cE))
509+ then [StringEntry(aA(), cC)]
476510 else throw("Strict value is not equal to itself.")
477511 }
478512 else throw("Strict value is not equal to itself.")
480514
481515
482516
483-@Callable(bO)
517+@Callable(bW)
484518 func confirmManager () = {
485- let cv = bM()
486- let cw = if (isDefined(cv))
519+ let cF = bU()
520+ let cG = if (isDefined(cF))
487521 then true
488522 else throw("No pending manager")
489- if ((cw == cw))
523+ if ((cG == cG))
490524 then {
491- let cx = if ((bO.callerPublicKey == value(cv)))
525+ let cH = if ((bW.callerPublicKey == value(cF)))
492526 then true
493527 else throw("You are not pending manager")
494- if ((cx == cx))
495- then [StringEntry(az(), toBase58String(value(cv))), DeleteEntry(aA())]
528+ if ((cH == cH))
529+ then [StringEntry(az(), toBase58String(value(cF))), DeleteEntry(aA())]
496530 else throw("Strict value is not equal to itself.")
497531 }
498532 else throw("Strict value is not equal to itself.")
499533 }
500534
501535
502-@Verifier(cy)
503-func cz () = {
504- let cA = {
505- let bo = bK()
536+@Verifier(cI)
537+func cJ () = {
538+ let cK = {
539+ let bo = bS()
506540 if ($isInstanceOf(bo, "ByteVector"))
507541 then {
508- let bQ = bo
509- bQ
542+ let bY = bo
543+ bY
510544 }
511545 else if ($isInstanceOf(bo, "Unit"))
512- then cy.senderPublicKey
546+ then cI.senderPublicKey
513547 else throw("Match error")
514548 }
515- sigVerify(cy.bodyBytes, cy.proofs[0], cA)
549+ sigVerify(cI.bodyBytes, cI.proofs[0], cK)
516550 }
517551
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 () = "%s__managerPublicKey"
124124
125125
126126 func aA () = "%s__pendingManagerPublicKey"
127127
128128
129129 func aB () = split(a(ad()), c)
130130
131131
132132 func aC (aD) = split(valueOrElse(getString(aD), U("0", "0", "0", "0", "0")), c)
133133
134134
135135 func aE () = aC(ag())
136136
137137
138138 func aF (af) = aC(ae(af))
139139
140140
141141 func aG (af) = split(a(ae(af)), c)
142142
143143
144144 let aH = 0
145145
146146 let aI = 1
147147
148148 let aJ = 2
149149
150150 let aK = 3
151151
152152 func aL (b,aM,aN,aO) = {
153153 let V = parseIntValue(aM[P])
154154 let W = parseIntValue(aM[Q])
155155 let X = parseIntValue(aM[R])
156156 let Y = parseIntValue(aM[S])
157157 let Z = parseIntValue(aM[T])
158158 let aP = (V + aN[aH])
159159 let aQ = (W + aN[aI])
160160 let aR = (X + aN[aJ])
161161 let aS = (Y + aN[aK])
162162 if ((0 > aQ))
163163 then throw("invalid math")
164164 else StringEntry(b, aa(aP, aQ, aR, aS, aO))
165165 }
166166
167167
168168 func aT (af,i,ac,aU) = StringEntry(ah("invest", af, toBase58String(aU)), ab(i, ac))
169169
170170
171171 func aV (af,i,ac,aU) = StringEntry(ah("claim", af, toBase58String(aU)), ab(i, ac))
172172
173173
174174 func aW (aX,af,aU) = {
175175 let aY = aB()
176176 let F = parseIntValue(aY[t])
177177 let G = parseIntValue(aY[u])
178178 let aZ = (F + G)
179179 let k = parseIntValue(aY[v])
180180 let H = parseIntValue(aY[w])
181181 let I = aY[x]
182182 let ba = fromBase58String(I)
183183 let J = parseIntValue(aY[y])
184184 let K = aY[z]
185185 let bb = fromBase58String(K)
186186 let L = parseIntValue(aY[A])
187187 let bc = toString(af)
188188 let bd = aG(bc)
189189 let be = parseIntValue(bd[P])
190190 let bf = parseIntValue(bd[T])
191191 let bg = if ((F >= bf))
192192 then F
193193 else bf
194194 let bh = if ((height > aZ))
195195 then aZ
196196 else if ((F > height))
197197 then F
198198 else height
199199 let bi = (bh - bg)
200200 let bj = fraction(be, bi, G)
201201 let bk = h(bj, L, k, H, J)
202202 let bl = (aX == K)
203203 let bm = valueOrElse(getBoolean(ak()), false)
204204 let bn = {
205205 let bo = getInteger(al())
206206 if ($isInstanceOf(bo, "Int"))
207207 then {
208208 let bp = bo
209209 (height > bp)
210210 }
211211 else if ($isInstanceOf(bo, "Unit"))
212212 then false
213213 else throw("Match error")
214214 }
215215 let bq = [if (!(if (bl)
216216 then bm
217217 else false))
218218 then true
219219 else f("USDN claim is disabled"), if (!(if (bl)
220220 then bn
221221 else false))
222222 then true
223223 else f("USDN claim is ended")]
224224 if ((bq == bq))
225225 then {
226226 let br = value(getInteger(as(K)))
227227 let bs = value(getInteger(au(K)))
228- let bt = valueOrElse(getInteger(an()), 0)
229- let bu = valueOrElse(getInteger(av(K, bt)), br)
230- let bv = valueOrElse(getInteger(aw(K, bt, bc)), bs)
231- let bw = min([bj, bu, bv])
232- let bx = value(getInteger(ar()))
233- let by = e
234- let bz = {
235- let bA = invoke(addressFromStringValue(value(getString(ax()))), "putOneTknV2WithoutTakeFeeREADONLY", [by, bb], nil)
236- if ($isInstanceOf(bA, "(Int, Int, Int)"))
237- then bA
228+ let bt = value(getInteger(am()))
229+ let bu = valueOrElse(getInteger(an()), 0)
230+ let bv = if ((bu > 0))
231+ then {
232+ let bw = value(getInteger(ao((bu - 1))))
233+ let bx = value(getInteger(aq((bu - 1))))
234+ let by = if ((height > bx))
235+ then {
236+ let bz = (bu + 1)
237+ let bA = (bx + 1)
238+ let bB = ((bA + bt) - 1)
239+ $Tuple3(bz, bA, bB)
240+ }
241+ else $Tuple3(bu, bw, bx)
242+ let bz = by._1
243+ let bA = by._2
244+ let bB = by._3
245+ $Tuple3(bz, bA, bB)
246+ }
247+ else $Tuple3(bu, valueOrElse(getInteger(ao(bu)), height), valueOrElse(getInteger(aq(bu)), ((height + bt) - 1)))
248+ let bz = bv._1
249+ let bA = bv._2
250+ let bB = bv._3
251+ let bC = valueOrElse(getInteger(av(K, bz)), br)
252+ let bD = valueOrElse(getInteger(aw(K, bz, bc)), bs)
253+ let bE = min([bj, bC, bD])
254+ let bF = value(getInteger(ar()))
255+ let bG = e
256+ let bH = {
257+ let bI = invoke(addressFromStringValue(value(getString(ax()))), "putOneTknV2WithoutTakeFeeREADONLY", [bG, K], nil)
258+ if ($isInstanceOf(bI, "(Int, Int, Int)"))
259+ then bI
238260 else throw("Couldn't cast Any to (Int, Int, Int)")
239261 }
240- if ((bz == bz))
262+ if ((bH == bH))
241263 then {
242- let bB = bz._3
243- let bC = bz._2
244- let bD = bz._1
245- let bE = value(fromBase58String(value(getString(ay()))))
246- let bF = {
247- let bA = invoke(addressFromStringValue(value(getString(ax()))), "getOneTknV2READONLY", [bE, bD], nil)
248- if ($isInstanceOf(bA, "(Int, Int)"))
249- then bA
264+ let bJ = bH._3
265+ let bK = bH._2
266+ let bL = bH._1
267+ let bM = value(getString(ay()))
268+ let bN = {
269+ let bI = invoke(addressFromStringValue(value(getString(ax()))), "getOneTknV2READONLY", [bM, bL], nil)
270+ if ($isInstanceOf(bI, "(Int, Int)"))
271+ then bI
250272 else throw("Couldn't cast Any to (Int, Int)")
251273 }
252- if ((bF == bF))
274+ if ((bN == bN))
253275 then {
254- let bG = bF._2
255- let bH = bF._1
256- let bI = fraction(bH, by, e)
257- let bJ = (valueOrElse(getInteger(aq(bt)), aZ) - height)
276+ let bO = bN._2
277+ let bP = bN._1
278+ let bQ = fraction(bP, bG, e)
279+ let bR = (bB - height)
258280 if ((aX == K))
259- then $Tuple6([0, -(bw), bw, 0], bw, bb, bd, bh, [bj, bk, bw, bu, bx, bI, bJ])
281+ then $Tuple6([0, -(bE), bE, 0], bE, bb, bd, bh, [bz, bA, bB, bj, bk, bE, bC, bF, bQ, bR])
260282 else if ((aX == I))
261- then $Tuple6([0, -(bw), 0, bw], bk, ba, bd, bh, [bj, bk, bw, bu, bI, bx])
283+ then $Tuple6([0, -(bE), 0, bE], bk, ba, bd, bh, [bz, bA, bB, bj, bk, bE, bC, bF, bQ, bR])
262284 else f(makeString(["unsupported assetId:", aX], " "))
263285 }
264286 else throw("Strict value is not equal to itself.")
265287 }
266288 else throw("Strict value is not equal to itself.")
267289 }
268290 else throw("Strict value is not equal to itself.")
269291 }
270292
271293
272-func bK () = {
294+func bS () = {
273295 let bo = getString(az())
274296 if ($isInstanceOf(bo, "String"))
275297 then {
276- let bL = bo
277- fromBase58String(bL)
298+ let bT = bo
299+ fromBase58String(bT)
278300 }
279301 else if ($isInstanceOf(bo, "Unit"))
280302 then unit
281303 else throw("Match error")
282304 }
283305
284306
285-func bM () = {
307+func bU () = {
286308 let bo = getString(aA())
287309 if ($isInstanceOf(bo, "String"))
288310 then {
289- let bL = bo
290- fromBase58String(bL)
311+ let bT = bo
312+ fromBase58String(bT)
291313 }
292314 else if ($isInstanceOf(bo, "Unit"))
293315 then unit
294316 else throw("Match error")
295317 }
296318
297319
298-func bN (bO) = {
299- let bP = throw("Permission denied")
300- let bo = bK()
320+func bV (bW) = {
321+ let bX = throw("Permission denied")
322+ let bo = bS()
301323 if ($isInstanceOf(bo, "ByteVector"))
302324 then {
303- let bQ = bo
304- if ((bO.callerPublicKey == bQ))
325+ let bY = bo
326+ if ((bW.callerPublicKey == bY))
305327 then true
306- else bP
328+ else bX
307329 }
308330 else if ($isInstanceOf(bo, "Unit"))
309- then if ((bO.caller == this))
331+ then if ((bW.caller == this))
310332 then true
311- else bP
333+ else bX
312334 else throw("Match error")
313335 }
314336
315337
316-@Callable(bO)
338+@Callable(bW)
317339 func constructor (D,E,F,G,k,K,M) = {
318340 let H = ((100 * 1000) * 1000)
319- let bR = (D + E)
341+ let bZ = (D + E)
320342 if (isDefined(getString(ad())))
321343 then throw("already initialized")
322- else if (("3PMEHLx1j6zerarZTYfsGqDeeZqQoMpxq5S" != toString(bO.caller)))
344+ else if (("3PMEHLx1j6zerarZTYfsGqDeeZqQoMpxq5S" != toString(bW.caller)))
323345 then throw("not authorized")
324- else if ((size(bO.payments) != 1))
346+ else if ((size(bW.payments) != 1))
325347 then throw("exactly 1 payment must be attached")
326- else if ((bR >= F))
348+ else if ((bZ >= F))
327349 then throw("claimStart must be greater than idoEnd")
328350 else {
329- let bS = value(bO.payments[0])
330- let ba = value(bS.assetId)
331- let bT = valueOrErrorMessage(assetInfo(ba), "fail to load ido asset info")
351+ let ca = value(bW.payments[0])
352+ let ba = value(ca.assetId)
353+ let cb = valueOrErrorMessage(assetInfo(ba), "fail to load ido asset info")
332354 let I = toBase58String(ba)
333- let J = pow(10, 0, bT.decimals, 0, 0, DOWN)
355+ let J = pow(10, 0, cb.decimals, 0, 0, DOWN)
334356 let bb = fromBase58String(K)
335- let bU = valueOrErrorMessage(assetInfo(bb), "fail to load price asset info")
336- let L = pow(10, 0, bU.decimals, 0, 0, DOWN)
337- let bV = aE()
338- let bW = [0, 0, 0, 0]
339-[StringEntry(ad(), O(D, E, F, G, k, H, I, J, K, L, M, bS.amount)), aL(ag(), bV, bW, F)]
357+ let cc = valueOrErrorMessage(assetInfo(bb), "fail to load price asset info")
358+ let L = pow(10, 0, cc.decimals, 0, 0, DOWN)
359+ let cd = aE()
360+ let ce = [0, 0, 0, 0]
361+[StringEntry(ad(), O(D, E, F, G, k, H, I, J, K, L, M, ca.amount)), aL(ag(), cd, ce, F)]
340362 }
341363 }
342364
343365
344366
345-@Callable(bO)
367+@Callable(bW)
346368 func invest () = {
347369 let aY = aB()
348370 let D = parseIntValue(aY[r])
349371 let E = parseIntValue(aY[s])
350- let bR = (D + E)
372+ let bZ = (D + E)
351373 let F = parseIntValue(aY[t])
352374 let G = parseIntValue(aY[u])
353375 let k = parseIntValue(aY[v])
354376 let H = parseIntValue(aY[w])
355377 let I = aY[x]
356378 let ba = fromBase58String(I)
357379 let J = parseIntValue(aY[y])
358380 let K = aY[z]
359381 let bb = fromBase58String(K)
360382 let L = parseIntValue(aY[A])
361- let bX = parseIntValue(aY[B])
362- let af = toString(bO.caller)
383+ let cf = parseIntValue(aY[B])
384+ let af = toString(bW.caller)
363385 if ((D > height))
364386 then throw("ido has not been started yet")
365- else if ((height > bR))
387+ else if ((height > bZ))
366388 then throw("ido has been already ended")
367- else if ((size(bO.payments) != 1))
389+ else if ((size(bW.payments) != 1))
368390 then throw("exactly 1 payment is expected")
369391 else {
370- let bS = value(bO.payments[0])
371- let bY = value(bS.assetId)
372- let bZ = bS.amount
373- if ((bY != bb))
374- then throw((("invalid payment asset id: " + toBase58String(bY)) + " is expected"))
392+ let ca = value(bW.payments[0])
393+ let cg = value(ca.assetId)
394+ let ch = ca.amount
395+ if ((cg != bb))
396+ then throw((("invalid payment asset id: " + toBase58String(cg)) + " is expected"))
375397 else {
376- let ca = aF(af)
377- let bV = aE()
378- let cb = (parseIntValue(bV[P]) + bZ)
379- let cc = (cb * 100)
380- if ((cc > assetBalance(this, ba)))
398+ let ci = aF(af)
399+ let cd = aE()
400+ let cj = (parseIntValue(cd[P]) + ch)
401+ let ck = (cj * 100)
402+ if ((ck > assetBalance(this, ba)))
381403 then throw("IDO asset has been - sold consider to use smaller payment")
382404 else {
383- let bW = [bZ, bZ, 0, 0]
384-[aL(ae(af), ca, bW, F), aL(ag(), bV, bW, F), aT(af, bZ, 0, bO.transactionId)]
405+ let ce = [ch, ch, 0, 0]
406+[aL(ae(af), ci, ce, F), aL(ag(), cd, ce, F), aT(af, ch, 0, bW.transactionId)]
385407 }
386408 }
387409 }
388410 }
389411
390412
391413
392-@Callable(bO)
414+@Callable(bW)
393415 func claim (aX,bc) = {
394- let cd = toString(bO.caller)
395- if ((bc != cd))
416+ let cl = toString(bW.caller)
417+ if ((bc != cl))
396418 then f("not authorized")
397419 else {
398- let ce = aW(aX, bO.caller, bO.transactionId)
399- let bW = ce._1
400- let cf = ce._2
401- let cg = ce._3
402- let bd = ce._4
403- let bh = ce._5
404- let ch = ce._6
405- let bj = ch[0]
406- let ci = ch[1]
407- let cj = ch[2]
408- let ck = ch[3]
420+ let bb = aB()[z]
421+ let cm = aW(aX, bW.caller, bW.transactionId)
422+ let ce = cm._1
423+ let cn = cm._2
424+ let co = cm._3
425+ let bd = cm._4
426+ let bh = cm._5
427+ let cp = cm._6
428+ let bu = cp[0]
429+ let bA = cp[1]
430+ let bB = cp[2]
431+ let bj = cp[3]
432+ let cq = cp[4]
433+ let cr = cp[5]
434+ let cs = cp[6]
435+ let bF = cp[7]
436+ let ct = cp[8]
437+ let cu = cp[9]
409438 let bq = [if (if ((bj > 0))
410439 then true
411- else (ci > 0))
440+ else (cq > 0))
412441 then true
413- else f("nothing to claim"), if ((cj > 0))
442+ else f("nothing to claim"), if ((cr > 0))
414443 then true
415- else f("unavailable to claim because user period allowance reached"), if ((ck > 0))
444+ else f("unavailable to claim because user period allowance reached"), if ((cs > 0))
416445 then true
417446 else f("unavailable to claim because total period allowance reached")]
418447 if ((bq == bq))
419448 then {
420- let cl = bW[aJ]
421- let cm = bW[aK]
422- $Tuple2([ScriptTransfer(bO.caller, cf, cg), aL(ae(bc), bd, bW, bh), aL(ag(), aE(), bW, bh), aV(bc, cl, cm, bO.transactionId)], unit)
449+ let cv = ce[aJ]
450+ let cw = ce[aK]
451+ let cx = (cs - cv)
452+ let cy = (cr - cv)
453+ $Tuple2([ScriptTransfer(bW.caller, cn, co), aL(ae(bc), bd, ce, bh), aL(ag(), aE(), ce, bh), IntegerEntry(an(), bu), IntegerEntry(ao(bu), bA), IntegerEntry(aq(bu), bB), IntegerEntry(av(bb, bu), cx), IntegerEntry(aw(bb, bu, bc), cy), aV(bc, cv, cw, bW.transactionId)], unit)
423454 }
424455 else throw("Strict value is not equal to itself.")
425456 }
426457 }
427458
428459
429460
430-@Callable(bO)
461+@Callable(bW)
431462 func claimREADONLY (aX,bc) = {
432- let ce = aW(aX, addressFromStringValue(bc), fromBase58String(""))
433- let bW = ce._1
434- let cf = ce._2
435- let cg = ce._3
436- let bd = ce._4
437- let bh = ce._5
438- let ch = ce._6
439- let cn = ch[1]
440- let co = ch[2]
441- $Tuple2(nil, makeString(["%s%d%d", bc, toString(cn), toString(co)], c))
463+ let cm = aW(aX, addressFromStringValue(bc), fromBase58String(""))
464+ let ce = cm._1
465+ let cn = cm._2
466+ let co = cm._3
467+ let bd = cm._4
468+ let bh = cm._5
469+ let cp = cm._6
470+ let cz = cp[4]
471+ let cA = cp[5]
472+ $Tuple2(nil, makeString(["%s%d%d", bc, toString(cA), toString(cz)], c))
442473 }
443474
444475
445476
446-@Callable(bO)
477+@Callable(bW)
447478 func claimV2READONLY (aX,bc) = {
448- let ce = aW(aX, addressFromStringValue(bc), fromBase58String(""))
449- let bW = ce._1
450- let cf = ce._2
451- let cg = ce._3
452- let bd = ce._4
453- let bh = ce._5
454- let ch = ce._6
455- let bj = ch[0]
456- let ci = ch[1]
457- let cj = ch[2]
458- let ck = ch[3]
459- let bx = ch[4]
460- let cp = ch[5]
461- let cq = ch[6]
462- let cr = makeString(["%d%d%d%d%d%d%d", toString(bj), toString(ci), toString(cj), toString(ck), toString(bx), toString(cp), toString(cq)], c)
463- $Tuple2(nil, cr)
479+ let cm = aW(aX, addressFromStringValue(bc), fromBase58String(""))
480+ let ce = cm._1
481+ let cn = cm._2
482+ let co = cm._3
483+ let bd = cm._4
484+ let bh = cm._5
485+ let cp = cm._6
486+ let bu = cp[0]
487+ let bA = cp[1]
488+ let bB = cp[2]
489+ let bj = cp[3]
490+ let cq = cp[4]
491+ let cr = cp[5]
492+ let cs = cp[6]
493+ let bF = cp[7]
494+ let ct = cp[8]
495+ let cu = cp[9]
496+ let cB = makeString(["%d%d%d%d%d%d%d", toString(bj), toString(cq), toString(cr), toString(cs), toString(bF), toString(ct), toString(cu)], c)
497+ $Tuple2(nil, cB)
464498 }
465499
466500
467501
468-@Callable(bO)
469-func setManager (cs) = {
470- let ct = bN(bO)
471- if ((ct == ct))
502+@Callable(bW)
503+func setManager (cC) = {
504+ let cD = bV(bW)
505+ if ((cD == cD))
472506 then {
473- let cu = fromBase58String(cs)
474- if ((cu == cu))
475- then [StringEntry(aA(), cs)]
507+ let cE = fromBase58String(cC)
508+ if ((cE == cE))
509+ then [StringEntry(aA(), cC)]
476510 else throw("Strict value is not equal to itself.")
477511 }
478512 else throw("Strict value is not equal to itself.")
479513 }
480514
481515
482516
483-@Callable(bO)
517+@Callable(bW)
484518 func confirmManager () = {
485- let cv = bM()
486- let cw = if (isDefined(cv))
519+ let cF = bU()
520+ let cG = if (isDefined(cF))
487521 then true
488522 else throw("No pending manager")
489- if ((cw == cw))
523+ if ((cG == cG))
490524 then {
491- let cx = if ((bO.callerPublicKey == value(cv)))
525+ let cH = if ((bW.callerPublicKey == value(cF)))
492526 then true
493527 else throw("You are not pending manager")
494- if ((cx == cx))
495- then [StringEntry(az(), toBase58String(value(cv))), DeleteEntry(aA())]
528+ if ((cH == cH))
529+ then [StringEntry(az(), toBase58String(value(cF))), DeleteEntry(aA())]
496530 else throw("Strict value is not equal to itself.")
497531 }
498532 else throw("Strict value is not equal to itself.")
499533 }
500534
501535
502-@Verifier(cy)
503-func cz () = {
504- let cA = {
505- let bo = bK()
536+@Verifier(cI)
537+func cJ () = {
538+ let cK = {
539+ let bo = bS()
506540 if ($isInstanceOf(bo, "ByteVector"))
507541 then {
508- let bQ = bo
509- bQ
542+ let bY = bo
543+ bY
510544 }
511545 else if ($isInstanceOf(bo, "Unit"))
512- then cy.senderPublicKey
546+ then cI.senderPublicKey
513547 else throw("Match error")
514548 }
515- sigVerify(cy.bodyBytes, cy.proofs[0], cA)
549+ sigVerify(cI.bodyBytes, cI.proofs[0], cK)
516550 }
517551

github/deemru/w8io/026f985 
104.88 ms