tx · 271APKeYbUAo1eYFEJPMdHQVCT11nVYTjtFvqMXXzRxu

3MyVUAzWpL91WbpgccHK5Arq5hu2xN2hXrj:  -0.01000000 Waves

2021.12.23 14:50 [1846872] smart account 3MyVUAzWpL91WbpgccHK5Arq5hu2xN2hXrj > SELF 0.00000000 Waves

{ "type": 13, "id": "271APKeYbUAo1eYFEJPMdHQVCT11nVYTjtFvqMXXzRxu", "fee": 1000000, "feeAssetId": null, "timestamp": 1640260294440, "version": 2, "chainId": 84, "sender": "3MyVUAzWpL91WbpgccHK5Arq5hu2xN2hXrj", "senderPublicKey": "Dvg2md8dJaE7kjnrJpoXiK7eSTQQ9kJRnVM58d3H4piA", "proofs": [ "5v5aSSYCxrzPxqTztUut2SPE1sKMv5xaREpuB3DprAXJdqCyCBMKjHHbm7xnitn6mELN9EdcEzGcpahtYNfNz9Ae" ], "script": "base64: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", "height": 1846872, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2WvpyRX92MBL8E4jkqkyMEwAGQWM72jb79cJ97WDrV3P Next: 93YYbojFfdGD8WFPRYQi8D4HTd42sCowboh2Xo9B9E4c Diff:
OldNewDifferences
2424 then $Tuple2(nil, toString(zeroBigInt))
2525 else {
2626 let ann = (amp * nCoins)
27- let arr = [1, 2, 3]
27+ let arr = [1, 2, 3, 4, 5]
2828 func calc (acc,cur) = {
29- let $t0667687 = acc
30- let d = $t0667687._1
31- let dPrev = $t0667687._2
29+ let $t0673693 = acc
30+ let d = $t0673693._1
31+ let dPrev = $t0673693._2
3232 let dp = (((d * d) * d) / (((x1 * x2) * nCoins) * nCoins))
3333 let dNext = (((((ann * s) / aPrecision) + (dp * nCoins)) * d) / ((((ann - aPrecision) * d) / aPrecision) + ((nCoins + toBigInt(1)) * dp)))
3434 $Tuple2(dNext, d)
3535 }
3636
37- let $t09011015 = {
37+ let $t0907957 = {
3838 let $l = arr
3939 let $s = size($l)
4040 let $acc0 = $Tuple2(s, unit)
4444
4545 func $f0_2 ($a,$i) = if (($i >= $s))
4646 then $a
47- else throw("List size exceeds 3")
47+ else throw("List size exceeds 5")
4848
49- $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
49+ $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5)
5050 }
51- let dNext = $t09011015._1
52- let dPrev = $t09011015._2
53- $Tuple2(nil, [toString(dNext), toString(value(dPrev))])
51+ let dNext = $t0907957._1
52+ let dPrev = $t0907957._2
53+ let dDiff = abs((dNext - value(dPrev)))
54+ if ((targetPrecision >= dDiff))
55+ then $Tuple2(nil, [toString(dNext), toString(value(dPrev))])
56+ else throw(("BROKEN! dDiff = " + toString(dDiff)))
5457 }
5558 }
5659
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let nCoins = toBigInt(2)
55
66 let aPrecision = toBigInt(100000000)
77
88 let zeroBigInt = toBigInt(0)
99
1010 let targetPrecision = toBigInt(1)
1111
1212 func abs (val) = if ((zeroBigInt > val))
1313 then -(val)
1414 else val
1515
1616
1717 @Callable(i)
1818 func calcD (x1Str,x2Str,ampStr) = {
1919 let x1 = parseBigIntValue(x1Str)
2020 let x2 = parseBigIntValue(x2Str)
2121 let amp = parseBigIntValue(ampStr)
2222 let s = (x1 + x2)
2323 if ((s == zeroBigInt))
2424 then $Tuple2(nil, toString(zeroBigInt))
2525 else {
2626 let ann = (amp * nCoins)
27- let arr = [1, 2, 3]
27+ let arr = [1, 2, 3, 4, 5]
2828 func calc (acc,cur) = {
29- let $t0667687 = acc
30- let d = $t0667687._1
31- let dPrev = $t0667687._2
29+ let $t0673693 = acc
30+ let d = $t0673693._1
31+ let dPrev = $t0673693._2
3232 let dp = (((d * d) * d) / (((x1 * x2) * nCoins) * nCoins))
3333 let dNext = (((((ann * s) / aPrecision) + (dp * nCoins)) * d) / ((((ann - aPrecision) * d) / aPrecision) + ((nCoins + toBigInt(1)) * dp)))
3434 $Tuple2(dNext, d)
3535 }
3636
37- let $t09011015 = {
37+ let $t0907957 = {
3838 let $l = arr
3939 let $s = size($l)
4040 let $acc0 = $Tuple2(s, unit)
4141 func $f0_1 ($a,$i) = if (($i >= $s))
4242 then $a
4343 else calc($a, $l[$i])
4444
4545 func $f0_2 ($a,$i) = if (($i >= $s))
4646 then $a
47- else throw("List size exceeds 3")
47+ else throw("List size exceeds 5")
4848
49- $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
49+ $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5)
5050 }
51- let dNext = $t09011015._1
52- let dPrev = $t09011015._2
53- $Tuple2(nil, [toString(dNext), toString(value(dPrev))])
51+ let dNext = $t0907957._1
52+ let dPrev = $t0907957._2
53+ let dDiff = abs((dNext - value(dPrev)))
54+ if ((targetPrecision >= dDiff))
55+ then $Tuple2(nil, [toString(dNext), toString(value(dPrev))])
56+ else throw(("BROKEN! dDiff = " + toString(dDiff)))
5457 }
5558 }
5659
5760

github/deemru/w8io/169f3d6 
29.46 ms