tx · 7AqxHTrjpbx31sV3wREDaHYXswBKCRbXVVsgPWMqjXz6

3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL:  -0.01000000 Waves

2021.08.15 12:52 [1659319] smart account 3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL > SELF 0.00000000 Waves

{ "type": 13, "id": "7AqxHTrjpbx31sV3wREDaHYXswBKCRbXVVsgPWMqjXz6", "fee": 1000000, "feeAssetId": null, "timestamp": 1629021124325, "version": 2, "chainId": 84, "sender": "3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL", "senderPublicKey": "EYAKsFBespqQveBrfmX29rsehBJrSwQ3B6yN4ADyw8Kx", "proofs": [ "3DFyh9tQ8SLbmiyxEL7X2fC9vMjr5NR1v6oiWNBqpp9hvfYBDA4EtGZDfF7pp8iY7PBqxk25QJMKTgHMxSHZeFXz" ], "script": "base64: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", "height": 1659319, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 549rLoUZW7KqvdMf4iayEqUcRiB4L8wEDWJNUe1cwys3 Next: 3Qma41qeDQ4dTtb3mvTmfuSN4tmLYExGQEprt2vGgKz5 Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func routingTrade (exchangers,args,assetPay,minAmountToReceive) = {
88 let $t0618693 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
99 let pmtAmount = $t0618693._1
1010 let pmtAssetId = $t0618693._2
1111 let routingSize = size(exchangers)
1212 func exchangeFold (accumulated,exchanger) = if ((routingSize > accumulated))
1313 then {
1414 let exchangerAddress = addressFromStringValue(exchanger)
1515 let inv = invoke(exchangerAddress, "exchange", [args[accumulated]], [AttachedPayment(pmtAssetId, pmtAmount)])
1616 if ((inv == inv))
1717 then (accumulated + 1)
1818 else throw("Strict value is not equal to itself.")
1919 }
2020 else accumulated
2121
2222 let routing = {
2323 let $list11811217 = exchangers
2424 let $size11811217 = size($list11811217)
2525 let $acc011811217 = 0
2626 if (($size11811217 == 0))
2727 then $acc011811217
2828 else {
2929 let $acc111811217 = exchangeFold($acc011811217, $list11811217[0])
3030 if (($size11811217 == 1))
3131 then $acc111811217
3232 else {
3333 let $acc211811217 = exchangeFold($acc111811217, $list11811217[1])
3434 if (($size11811217 == 2))
3535 then $acc211811217
3636 else {
3737 let $acc311811217 = exchangeFold($acc211811217, $list11811217[2])
3838 if (($size11811217 == 3))
3939 then $acc311811217
4040 else {
4141 let $acc411811217 = exchangeFold($acc311811217, $list11811217[3])
4242 if (($size11811217 == 4))
4343 then $acc411811217
4444 else {
4545 let $acc511811217 = exchangeFold($acc411811217, $list11811217[4])
4646 if (($size11811217 == 5))
4747 then $acc511811217
4848 else {
4949 let $acc611811217 = exchangeFold($acc511811217, $list11811217[5])
5050 throw("List size exceed 5")
5151 }
5252 }
5353 }
5454 }
5555 }
5656 }
5757 }
5858 if ((routing == routingSize))
5959 then {
6060 let ammountToRecieve = assetBalance(this, assetPay)
6161 [ScriptTransfer(i.caller, ammountToRecieve, assetPay)]
6262 }
6363 else nil
6464 }
6565
6666

github/deemru/w8io/873ac7e 
36.23 ms